GitLab.com でパイプライン実行を試してます。 の状態が短くても数分、長ければ20分近く待たされることもあります。予想以上に時間がかかるな、という印象。
急ぎの時に焦るのも嫌なので、自分で建てたRunnerで実行するように変更してみました。
Runnerとは
RunnerとはCI/CDパイプラインのジョブ実行環境のことです。 GitLab.comでプロジェクトを作った場合、デフォルトではサービスとして提供されている Shared runners 上で実行されます。
で、「実行待ち」に時間がかかる理由はおそらくRunnerの空きが出るのを待っている時間だろうと推測して、自前で準備した Specific runners を使う設定に変えてみました。
やってみた結果
(ま当たり前なんですが)「実行待ち」の状態がほぼなくなりました。 🎉
手順メモ
Runner を設定したいプロジェクトで、「設定 - CI/CD」を選ぶ。
Runner を「展開」。
Shared runners の
Enable shared runners for this project
を OFF にして、 Specific runners のAnd this registration token:
の下に書かれている文字列をコピーして保存しておく。自分のPCにRunnerをインストールする。 (手順: https://docs.gitlab.com/runner/install/ )
Runner の登録を行う。 (手順: https://docs.gitlab.com/runner/register/ )
今回はこんな感じで設定しました:sudo gitlab-runner register \ --non-interactive \ --executor "docker" \ --docker-image "node:latest" \ --url https://gitlab.com/ \ --description "test-01" \ --tag-list "docker" \ --run-untagged="true" \ --docker-pull-policy "if-not-present" \ --registration-token "「And this registration token:」に書かれていた文字列"