
Branch Deploy Action (branch-deploy) には Admins という設定がある⚙️ Admins に管理者レベルの権限を持った GitHub アカウント名を指定すると,あくまで「例外的な運用として」Branch protection rule(ブランチ保護ルール)の「Require approvals」を無視してデプロイできるようになる.どういう感じの制御になるのか実際に確認してみた❗️
準備
README.md に以下のように書いてある.よって,Admins という設定を有効化する前に「Branch protection rule(ブランチ保護ルール)」で「Require approvals」を有効化しておく✔️(今回は使い慣れた classic branch protection を使った)
It should be noted that if you do not have pull request approvals enabled in your branch protection rules, then this option will not make a difference either way

GitHub Actions ワークフロー
基本的には以下の記事に載せた GitHub Actions ワークフロー(Branch Deploy Action で Terraform をデプロイする)と同じにしつつ,Branch Deploy Action (branch-deploy) のパラメータとして admins: kakakakakku を追加した.
GitHub Actions ワークフローの一部を抜粋して載せておく📝
jobs: deploy: name: deploy runs-on: ubuntu-latest env: GITHUB_TOKEN: ${{ github.token }} GH_TOKEN: ${{ github.token }} if: ${{ github.event.issue.pull_request }} steps: - name: branch-deploy id: branch-deploy uses: github/branch-deploy@v10.4.1 with: noop_trigger: ".plan" trigger: ".apply" admins: kakakakakku
動作確認
admins: kakakakakku 設定なし🙅
プルリクエストを作って Approve なし(レビュー未済)だと .plan は実行できるけど .apply は ⚠️ Cannot proceed with deployment というエラーになった.よって,基本的には Approve をもらってから .apply を実行する流れになる.

admins: kakakakakku 設定あり🙆♂️
もう一度プルリクエストを作って Approve なし(レビュー未済)のまま .apply を実行する.一般アカウントだと,同じく .plan は実行できるけど .apply は ⚠️ Cannot proceed with deployment というエラーになった.そして管理者アカウント (@kakakakakku) だと,例外的に .plan も .apply も実行できた.

まとめ
実際に確認してみて Admins という設定のイメージを理解できた👌