Skip to content

Commit f5f6a6c

Browse files
authored
Merge pull request #80 from apideck-libraries/samz/enable-auto-merge
chore: enable auto-merge
2 parents a9ebb5a + e2ef603 commit f5f6a6c

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Auto-merge generated SDK PRs
2+
3+
on:
4+
pull_request:
5+
types: [opened, reopened, synchronize, labeled, ready_for_review]
6+
7+
permissions:
8+
contents: write
9+
pull-requests: write
10+
11+
jobs:
12+
enable-automerge:
13+
if: >
14+
(github.event.pull_request.user.login == 'github-actions' ||
15+
github.event.pull_request.user.login == 'github-actions[bot]') &&
16+
startsWith(github.event.pull_request.title, 'chore: 🐝 Update SDK - Generate')
17+
runs-on: ubuntu-latest
18+
steps:
19+
- name: Check labels (needs minor or patch)
20+
id: labels
21+
uses: actions/github-script@v7
22+
with:
23+
script: |
24+
const { owner, repo } = context.repo;
25+
const prNumber = context.payload.pull_request.number;
26+
const { data: labels } = await github.rest.issues.listLabelsOnIssue({ owner, repo, issue_number: prNumber });
27+
const names = labels.map(l => l.name.toLowerCase());
28+
core.setOutput('match', names.includes('minor') || names.includes('patch'));
29+
30+
- name: Enable auto-merge (squash)
31+
if: steps.labels.outputs.match == 'true'
32+
uses: peter-evans/enable-pull-request-automerge@v3
33+
with:
34+
pull-request-number: ${{ github.event.pull_request.number }}
35+
merge-method: squash
36+
token: ${{ secrets.GITHUB_TOKEN }}
37+

0 commit comments

Comments
 (0)