okaryo.log

プルリクエストがマージされたときにGitHubActionsのワークフローが実行されるようにする | okaryo.log

プルリクエストがマージされたときにGitHubActionsのワークフローが実行されるようにする

    #GitHub#GitHubActions#CI/CD

穴があった設定

個人開発において、プルリクエストがマージされたときに実行されるGitHubActionsのワークフローを以下のように設定していた。

name: Some Build

on:
  pull_request:
    branches:
      - main
    types:
      - closed

jobs:
  build:
    runs-on: ubuntu-latest
    steps:

しかし、この設定には抜け穴があり、プルリクエストをマージせずにクローズしたときでも実行されてしまった。この設定を修正することで、プルリクエストがマージされたときにだけワークフローが実行されるようにしたい。

修正後の設定

GitHubActionsにはプルリクエスト関連のトリガーでmergedのようなイベントは用意されていない。

そのため、以下のようにif条件を使うことでマージ時にのみジョブが実行されるようにする。

name: Some Build

on:
  pull_request:
    branches:
      - main
    types:
      - closed

jobs:
  build:
    if: github.event.pull_request.merged == true # これ
    runs-on: ubuntu-latest
    steps:

これでプルリクエストがマージされたときにだけワークフローが実行されるようになった。

参考


関連記事
最新記事
プロモーション

This site uses Google Analytics.