※当サイトのリンクには広告が含まれています。

【個人開発でGitLab】GitLab CIの概要と簡単な手順を紹介

GitLab

今回は、GitLab CIについての概要を紹介します。

対象としているユーザーは、GitLab.comを使用していて、GitLab CIに必要なGitLab Runnerは別サーバーで用意しない人を想定しています。

スポンサーリンク

GitLab CIを使うための手順

GitLab.comを使用している場合、GitLab CIを使う手順は下記のようになります。

  1. .gitlab-ci.ymlを作成する
  2. 作成したgitlab-ci.ymlをCI実行したいプロジェクトのリポジトリに置く

大まかな手順はこれだけです。

ということは、GitLab CIの一番のポイントとなるのは .gitlab-ci.yml ということになります。
このファイルでGitLab CIで実行するjobの定義などを行うことになります。

手順としては上記の通りですが、CIが実行されるタイミングはデフォルト設定では、リポジトリに何かしらの変更があった場合になります。
ファイルを追加したり、ファイルの内容を書き換えたり、ファイルを削除したりするとGitLabがそれをトリガーにして、GitLab CIを実行します。

スポンサーリンク

.gitlab-ci.yml の書き方

.gitlab-ci.yml の構成

.gitlab-ci.ymlはYAMLファイルであり、構造化されたデータを表現するためのフォーマット形式になっています。

YAMLのフォーマット は、 データの階層構造をインデントを使って表します。

Ruby関連の設定にこのYAML形式のファイルが使用されることが多いようです。
(Rubyをほとんど触ったことないので、.gitlab-ci.ymlに触れるまで知りませんでした・・・)

.gitlab-ci.yml のサンプル

とても簡潔な.gitlab-ci.ymlのサンプルを書いてみます。

image: python:latest

stages:
  - test
  
job_1:
  stage: test
  script:
    - python hello.py

サンプルの解説

1行目:image

CI実行する環境のDockerイメージを指定しています。
今回はPythonのテストコードを実行するCIを作成しようと思うので、Python最新版のDockerイメージを指定しました。

3行目:stages

今回は1つのjobしかないので必要性がないですが、数多くのjobを実行させる時、ステージ分けをして並列で実行させることも可能です。
そのステージ分けにこのstagesを使用します。
そしてjob毎にstageを指定することでステージが関連付けされます。

6行目:job_1

CIで実行するjobの内容を書いていきます。
job_1がjob名になります。

7行目のstageが先ほど説明してstageの指定ですね。

8行目のscriptがCIで実行するスクリプトになります。
今回は、hello.pyというPythonのソースコードを実行するということを行っています。

これらのことすべてエラーなしに実行完了できれば、GitLab CIとしてsuccessということになります。

スポンサーリンク

GitLab CIを実行してみる

これまでの説明を踏まえて、実際にGitLab CIを実行させてみたいと思います。

テスト実行するhello.pyを作成して、リポジトリに保存します。
今回、hello.pyの内容はとても簡単に下記のコードにしました。

print("Hello, World!")

ただ、Hello, World!のテキストが出力されるだけのコードです。

その次に先ほどサンプルとして作成した.gitlab-ci.ymlも同じリポジトリに保存します。

保存した直後に、GitLab CIが実行されると思います。
実行結果は、左側メニューの『CI/CD』から確認できます。

上の画像を見ると、Statusがpassedになっていると思います。
どうやらうまくhello.pyが実行できたようです。

つぎにPipelineの中をもう少し見てみましょう。
PipelineのIDをクリックしてみます。

Pipelineの実行状態が見えました。
今回はstageもjobも1つだけなので、少し寂しい表示ですが、stageもjobが複数になっても、各jobがどのように実行されて、Statusがどうだったかが表示されます。

最後はjobの実行画面です。
ここで、Dockerイメージが構築されるところからhello.pyが実行されるまでのログを見ることができます。

27行目にhello.py実行のスクリプトが表示されて、28行目に実行結果が表示されていることがわかります。

今回は、簡単なサンプルでGitLab CIを実行するところまでやってみました。
GitLab CIはいろんな設定をして使用することができるので、また記事にしたいと思います。

GitLab
スポンサーリンク
toniemonをフォローする

コメント