1
2

More than 1 year has passed since last update.

GitLabのCI/CDで使用するgitlab-runnerのインストールもろもろ

Posted at

Gitlab CI/CDで使うRunnerの種類

Shared Runner, Group Runner, Specified Runnerがある
https://docs.gitlab.com/ee/ci/runners/runners_scope.html

筆者は最初Shared Runnerを使おうと思ったが途中でクレジットカードを登録してくれと求められ、課金する気はなかったので無料で使えそうなSpecified Runnerを使うことにした。

で、Specified Runnerを使うにはgitlab-runnerというツールをインストールしないといけなかった。

gitlab-runnerのインストール

公式でインストール手順が用意されているので、基本的にはこれに沿ってインストールする。
https://docs.gitlab.com/runner/install/osx.html

curlで取る方法とhomebrewで取る方法2パターン用意されているが、公式は前者を推してるっぽい。

GitLab does not maintain the Homebrew formula.

公式手順だけだとgitlab-runnerにPATHが通ってなかったので、↓を追加で実施した。

$ export PATH=$PATH:/usr/local/bin/gitlab-runner

runnerをGitlabのレポジトリに登録する

gitlab-runnerをインストールしたら、次は各自のレポジトリにrunnerを登録する必要がある。
これも公式の手順があるので、参考に進める。
https://docs.gitlab.com/runner/register/#macos

手順7のrunner executorは手順ではdockerを推奨しているが、自分はshellを選択した。

registerが完了すると、ブラウザのGitlabでRunnerが登録されていることを確認することができる。

トラブルシューティング

Gitlabブラウザにて!runner has never contacted this instanceの警告が出るとき

gitlab-runner verifyを実行すると解消される。

$ gitlab-runner verify
Runtime platform                                    arch=arm64 os=darwin pid=56801 revision=32fc1585 version=15.2.1
WARNING: Running in user-mode.                     
WARNING: Use sudo for system-mode:                 
WARNING: $ sudo gitlab-runner...                   
                                                   
Verifying runner... is alive                        runner=1ubm4htM

runnerを登録したのにCI/CDのpipelineが永遠にpendingになるとき

gitlab-runner runしておかないとCIがpendingのままになってしまうもよう。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2