name: Dependabot Auto Merge on: pull_request_target: types: - opened - synchronize - reopened permissions: contents: write pull-requests: write jobs: enable-auto-merge: if: github.actor == 'dependabot[bot]' runs-on: ubuntu-latest steps: - name: Fetch Dependabot metadata id: metadata uses: dependabot/fetch-metadata@v2 with: github-token: ${{ secrets.GITHUB_TOKEN }} - name: Approve patch and minor updates if: | steps.metadata.outputs.update-type == 'version-update:semver-patch' || steps.metadata.outputs.update-type == 'version-update:semver-minor' env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} PR_URL: ${{ github.event.pull_request.html_url }} run: gh pr review "$PR_URL" --approve --body "Auto-approved for safe Dependabot patch/minor update." - name: Enable auto-merge after checks pass if: | steps.metadata.outputs.update-type == 'version-update:semver-patch' || steps.metadata.outputs.update-type == 'version-update:semver-minor' env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} PR_URL: ${{ github.event.pull_request.html_url }} run: gh pr merge "$PR_URL" --auto --squash