Skip to content

feat: cache VS Code Marketplace version badge via Gist #73

feat: cache VS Code Marketplace version badge via Gist

feat: cache VS Code Marketplace version badge via Gist #73

name: Dependabot Auto-Merge
on:
pull_request_target:
workflow_dispatch:
permissions: {}
concurrency:
group: dependabot-auto-merge-${{ github.event.pull_request.number || github.run_id }}
cancel-in-progress: true
jobs:
auto-merge:
name: Auto-merge Dependabot PRs
runs-on: ubuntu-latest
timeout-minutes: 5
if: github.event.pull_request.user.login == 'dependabot[bot]'
permissions:
contents: write
pull-requests: write
steps:
- name: Harden runner
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
with:
egress-policy: audit
- name: Fetch Dependabot metadata
id: metadata
uses: dependabot/fetch-metadata@25dd0e34f4fe68f24cc83900b1fe3fe149efef98 # v3.1.0
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Approve and enable auto-merge (patch/minor only)
if: steps.metadata.outputs.update-type != 'version-update:semver-major'
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PR_URL: ${{ github.event.pull_request.html_url }}
run: |
gh pr review --approve "$PR_URL"
gh pr merge --auto --squash "$PR_URL"
- name: Skip major updates
if: steps.metadata.outputs.update-type == 'version-update:semver-major'
run: echo "Skipping major version update — requires manual review"