This Action merges pull requests and deletes the branch associated with the PR.
GITHUB_TOKEN
- Required Allows the Action to authenticte with the GitHub API.GITHUB_HOST
- Default: github.com Set it togithub.enterprise.com
to run on GHES
Here's an example workflow that uses the Merginator. The workflow is triggered by a PULL_REQUEST
being opened or reopened and checks for the following before merging the PR:
- The PR author is one of "automate6500" or "octocat"
- The code associted with the PR passes all lints and unit tests
- The PR has been approved by the Auto Approve Action
name: Auto Merge Owner
on:
pull_request:
types: [opened, reopened]
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
- uses: actions/[email protected]
with:
python-version: 3.11
- name: flake8 and pylint
run: |
pip install -r requirements.txt
flake8 --ignore=E501,E231 *.py tests/*.py
pylint --errors-only --disable=C0301 --disable=C0326 *.py tests/*.py
- name: unit test
run: python -m unittest --verbose --failfast
merge:
if: github.actor == 'automate6500' || github.actor == 'octocat'
needs: [lint]
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
- name: Auto Approve
uses: hmarr/[email protected]
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Pull Request Merginator
uses: managedkaos/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}