Skip to content
You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
git-merge

GitHub Action

Merge Schedule

v1.4.2

Merge Schedule

git-merge

Merge Schedule

merge pull requests on a scheduled day

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Merge Schedule

uses: gr2m/merge-schedule-action@v1.4.2

Learn more about this action in gr2m/merge-schedule-action

Choose a version

merge-schedule-action

GitHub Action to merge pull requests on a scheduled day

Usage

Create .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@v1
        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: 'America/Los_Angeles'
          # Name for the check. Default is `Merge Schedule`.
          check_name: 'Scheduled Merge'
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

In your pull requests, add a line to the end of the pull request description looking like this

/schedule 2022-06-08

Or if you need a more precise, timezone-safe setting, you can use an ISO 8601 date string

/schedule 2022-06-08T09:00:00.000Z

Any string that works with the new Date() constructor will work.

To control at which time of the day you want the pull request to be merged, I recommend adapting the - cron: ... setting in the workflow file.

The action sets a pending commit status if the pull request was recognized as being scheduled.

Note that pull requests from forks are ignored for security reasons.

License

ISC