GitlabでCIを使ってみる

プライベートリポジトリが無料ということで、GitLabを使い始めた。GitLabには専用のCIがあるようで、使ってみる。

GitLab CIとは

GitLab CIはGitLabを使ったCIツールです。

CIにやって欲しいことを.gitlab-ci.ymlをプロジェクトのルートディレクトリに書いておくと、そこに書いてあることがプッシュ時に実行されるというもの。ただ実行するのは、GitLabランナーという別のもので、.gitlab-ci.ymlはそこにこれこれこういうことをしてねということを伝えるトリガーになる。

f:id:utr066:20180705165146j:plain

Dockerの画像を張っているけど、Runnerは色々な作り方がある。

GitLab Runner | GitLab

実行されたものは、GitLabの画面で結果を確認できる。

MacをRunnerとして使う

Amazon EC2等自分でサーバーを立ててその中にRunnerを入れるといったことも可能ですが、簡易的に行うために、自分のMacをRunnnerとして使います。

本格的にプロジェクトを開発している時には、きちんとサーバーを自分で用意してその中にRunnerを入れた方が良いでしょう。

$ sudo curl --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-darwin-amd64
$ sudo chmod +x /usr/local/bin/gitlab-runner
$ cd ~
$ gitlab-runner install
$ gitlab-runner start

.gitlab-ci.ymlにプッシュ時にやって欲しいことを記述する

job1:
  script:
    - echo "Hello GitLab CI"

これをgitに追加してpushしてみましょう。

f:id:utr066:20180705183941p:plain

GitLabからCIを確認してみると、こんな表示がなされていますね。これが通るとpassedの表示に変わります。