🏇

GitHub Actionsで本番リリース用のPRを自動で立てる

2020/10/21に公開

mainブランチをステージング環境にデプロイし、その後releaseブランチを本番環境にデプロイする運用を取っていた場合を例に説明します。

mainブランチへのマージおよびステージング環境へのデプロイが完了した後、以下の最後のステップにより、本番環境へデプロイするためのPRを自動で立てることができます。

.github/workflows/deploy.yml
name: deploy
on:
  push:
    branches:
      - main
      - release

jobs:
  deploy:
    steps:
      # 略(mainブランチであれば検証環境に、releaseブランチであれば本番環境にデプロイする処理)

      - name: Create production release PR if does not exist
        if: github.ref == 'refs/heads/main'
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: gh pr view || gh pr create --base release --title "Production Release" --body ""

gh pr view ||とあるのは、既にmainブランチからreleaseブランチに対するマージのPRがあった場合でも、Actionsがエラーにならないようにするためです。

Discussion