1

私は次のような状況です: 2 つの GitLab リポジトリがmasterありslave、テストを実行するには両方を組み合わせる必要があります。

現時点では、次のアプローチを取っています。ビルド ステップとしてmasterプルする CI プロジェクトを作成し、テストを実行します。slave

ここで、誰かがプッシュするたびにビルドをトリガーしたいと考えてslaveいます。これを行う適切な方法は Webhook を使用するように思われるため、次の Webhook を に追加しましたslave

https://ci.foo.com/projects/1/build?token=19c72c17f0e69&ref=master

さて、ビルドがトリガーされるslaveと、次のビルドエラーが発生します。

cd /home/gitlab_ci_runner/gitlab-ci-runner/tmp/builds/project-1 && git reset --hard && git clean -fdx && git remote set-url origin https://gitlab-ci-token:19c72c17f0e69@git.foo.com/slave.git && git fetch origin
cd /home/gitlab_ci_runner/gitlab-ci-runner/tmp/builds/project-1 && git reset --hard && git checkout cc807f3023451165cd73a258b4e2b01edbc954a4
HEAD is now at b38bd72 fixed bar
fatal: reference is not a tree: cc807f3023451165cd73a258b4e2b01edbc954a4

問題は、これcc807f3023451165cd73a258b4e2b01edbc954a4が の最後のコミットであり、 のコミットでslaveはないmasterため、チェックアウトが失敗することです。

これを解決する方法を知っている人、またはこの状況で Webhook を使用する以外の解決策を知っている人はいますか?

4

0 に答える 0