はじめに
GitLab には GitLab CI という機能があり、git push
のような更新のタイミングで CI を実行できます。
デフォルトでは、マージリクエストの画面で CI の成功/失敗に関わらず Merge ボタンが押せます。
柔軟といえば柔軟ですが、厳密にしたい場合は少し不安が残るかもしれません。
そこで、この記事では CI が成功しないと Merge できないようにする設定を紹介します。
- 動作確認環境
- gitlab.com (GitLab Enterprise Edition 13.11.0-pre)
デフォルトでは CI 失敗時でも Merge 可
比較のため、デフォルトの挙動を説明します。
以下のように、CI に失敗しても Merge ボタン自体は押せるようになっています。
CI が成功しないと Merge できないようにする
CI が成功しないと Merge できないようにするには設定変更が必要です。
設定変更
プロジェクトの Setting
> General
画面を開きます。
Merge requests
セクションの Expand
をクリックして設定項目を開きます。
Pipelines must succeed
にチェックを入れて、Save change
をクリックします。
これで設定変更は完了です。
動作確認
以下のように、CI 失敗次は Merge ボタンが押せないようになります。