Skip to content

Instantly share code, notes, and snippets.

@jim80net
Created May 19, 2023 20:30
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save jim80net/ac93bfc23ece49bbfe37c3e8896dc1ac to your computer and use it in GitHub Desktop.
Save jim80net/ac93bfc23ece49bbfe37c3e8896dc1ac to your computer and use it in GitHub Desktop.
Auto approve and merge dependabot pull requests. Credit to Phillip Verheyden.
name: Dependabot auto-approve
on: pull_request_target
permissions:
pull-requests: write
# From the docs at https://github.com/dependabot/fetch-metadata#enabling-auto-merge
jobs:
dependabot:
runs-on: ubuntu-latest
if: ${{ github.event.pull_request.user.login == 'dependabot[bot]' }}
steps:
- name: Dependabot metadata
id: metadata
uses: dependabot/fetch-metadata@v1.3.0
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
- name: Auto-approve minor or patch updates
if: |
steps.metadata.outputs.update-type == 'version-update:semver-minor'
|| steps.metadata.outputs.update-type == 'version-update:semver-patch'
run: gh pr review --approve "$PR_URL"
env:
PR_URL: ${{github.event.pull_request.html_url}}
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
name: Dependabot auto-merge
on: pull_request
permissions:
pull-requests: write
contents: write
# Mostly from https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/automating-dependabot-with-github-actions#enable-auto-merge-on-a-pull-request
jobs:
dependabot:
runs-on: ubuntu-latest
if: ${{ github.event.pull_request.user.login == 'dependabot[bot]' }}
steps:
- name: Dependabot metadata
id: metadata
uses: dependabot/fetch-metadata@v1.3.0
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
- name: Enable auto-merge for Dependabot PRs
run: gh pr merge --auto --squash "$PR_URL"
env:
PR_URL: ${{github.event.pull_request.html_url}}
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}
@romw314
Copy link

romw314 commented Jul 4, 2023

In automerge-dependabot.yml the --squash argument is not necessary

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment