MergeSchedule

概要

  • 指定時間にPull Request をマージすることができる

方法

  • .github/workflows/merge-schedule.yml に以下を記載
name: Merge Schedule

on:
  pull_request:
    types:
      - opened
      - edited
      - synchronize
  schedule:
    # https://crontab.guru/every-hour
    - cron: "0 * * * *"

jobs:
  merge_schedule:
    runs-on: ubuntu-latest
    steps:
      - uses: gr2m/merge-schedule-action@v2
        with:
          # Merge method to use. Possible values are merge, squash or
          # rebase. Default is merge.
          merge_method: squash
          # Time zone to use. Default is UTC.
          time_zone: "JST"
          # Require all pull request statuses to be successful before
          # merging. Default is `false`.
          require_statuses_success: "false"
          # Label to apply to the pull request if the merge fails. Default is
          # `automerge-fail`.
          automerge_fail_label: "merge-schedule-failed"
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

使い方

  • Pull Request に以下のように記載
/schedule 2020-11-21T20:00
  • 以下のように UTC となるが、ymlで JST を指定していれば、JST で実行される
Scheduled to be merged on 2024-07-12 08:00:00 (UTC)

参照

▽g- GitHub ActionsでZenn記事の予約投稿を実現する