File tree Expand file tree Collapse file tree 3 files changed +50
-0
lines changed
Expand file tree Collapse file tree 3 files changed +50
-0
lines changed Original file line number Diff line number Diff line change 1+ name : Auto-merge
2+
3+ on :
4+ pull_request_target :
5+
6+ permissions :
7+ contents : write
8+ pull-requests : write
9+
10+ jobs :
11+ auto-merge :
12+ runs-on : ubuntu-latest
13+ if : github.actor == 'd2ai-bot' || github.actor == 'dependabot[bot]'
14+ steps :
15+ - name : Generate token
16+ uses : actions/create-github-app-token@v2
17+ id : app-token
18+ with :
19+ app-id : ${{ secrets.AUTOMERGE_APP_ID }}
20+ private-key : ${{ secrets.AUTOMERGE_PRIVATE_KEY }}
21+
22+ - name : Check Dependabot metadata
23+ if : github.actor == 'dependabot[bot]'
24+ id : metadata
25+ uses : dependabot/fetch-metadata@v2
26+ with :
27+ github-token : ${{ steps.app-token.outputs.token }}
28+
29+ - name : Determine if should auto-merge
30+ id : should-merge
31+ run : |
32+ if [ "${{ github.actor }}" == "d2ai-bot" ]; then
33+ echo "Auto-merge approved for d2ai-bot"
34+ echo "approved=true" >> $GITHUB_OUTPUT
35+ elif [ "${{ github.actor }}" == "dependabot[bot]" ]; then
36+ UPDATE_TYPE="${{ steps.metadata.outputs.update-type }}"
37+ if [ "$UPDATE_TYPE" == "version-update:semver-patch" ] || [ "$UPDATE_TYPE" == "version-update:semver-minor" ]; then
38+ echo "Auto-merge approved for Dependabot ($UPDATE_TYPE)"
39+ echo "approved=true" >> $GITHUB_OUTPUT
40+ else
41+ echo "Auto-merge skipped for Dependabot ($UPDATE_TYPE is major or unknown)"
42+ echo "approved=false" >> $GITHUB_OUTPUT
43+ fi
44+ fi
45+
46+ - name : Enable auto-merge
47+ if : steps.should-merge.outputs.approved == 'true'
48+ run : gh pr merge --auto --merge "${{ github.event.pull_request.html_url }}"
49+ env :
50+ GH_TOKEN : ${{ steps.app-token.outputs.token }}
File renamed without changes.
File renamed without changes.
You can’t perform that action at this time.
0 commit comments