💯
レビュワー全員の Approve を必須にする
概要
少し前に Auto-merge 機能が使えるようになりました。
ブランチ保護のルールが満たされたときに自動的にマージしてくれます。
しかしブランチ保護のルールには「レビュー数」は指定できても「全員のレビューが通ったか」は指定できません。
レビューをリクエストされた全員の Approve をマージ条件としたい場合の設定方法です。
GitHub Actions ワークフロー
.github/workflows/unanimously-approved.yml
name: Unanimously Approved
on:
pull_request:
types: [ opened, reopened, synchronize, review_requested, review_request_removed ]
pull_request_review:
types: [ submitted, dismissed ]
jobs:
unanimously-approved:
runs-on: ubuntu-20.04
steps:
- uses: snow-actions/unanimously-approved@v1.0.0
ブランチ保護
ブランチ保護でステータス unanimously-approved
(ジョブ名)を必須にします。
設定手順はこの記事にまとめていますのでご参照ください。
ここまで設定するとレビュワー全員の Approve が必須になります。
Auto-merge 有効化(オプション)
リポジトリの設定で Allow auto-merge
にチェックを入れておきます。
PR で Enable auto-merge
するとブランチ保護のルールが満たされた場合に自動的にマージされます。
Discussion