Skip to content

Commit 3bdc475

Browse files
authored
Add automation for v3 label assignments (#3845)
1 parent af49240 commit 3bdc475

1 file changed

Lines changed: 49 additions & 0 deletions

File tree

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: Assign v3 project and milestone
2+
3+
on:
4+
issues:
5+
types:
6+
- labeled
7+
pull_request_target:
8+
types:
9+
- labeled
10+
11+
permissions:
12+
contents: read
13+
issues: write
14+
pull-requests: write
15+
projects: write
16+
17+
jobs:
18+
assign-v3:
19+
if: github.event.label.name == 'v3'
20+
runs-on: ubuntu-latest
21+
steps:
22+
- name: Add item to v3 project
23+
uses: actions/add-to-project@v1.0.2
24+
with:
25+
project-url: https://github.com/orgs/gofiber/projects/1
26+
github-token: ${{ secrets.GITHUB_TOKEN }}
27+
- name: Assign v3 milestone
28+
uses: actions/github-script@v8
29+
with:
30+
github-token: ${{ secrets.GITHUB_TOKEN }}
31+
script: |
32+
const payload = context.eventName === 'issues' ? context.payload.issue : context.payload.pull_request;
33+
const issueNumber = payload.number;
34+
const milestones = await github.paginate(github.rest.issues.listMilestones, {
35+
owner: context.repo.owner,
36+
repo: context.repo.repo,
37+
state: 'open',
38+
per_page: 100,
39+
});
40+
const milestone = milestones.find((item) => item.title === 'v3');
41+
if (!milestone) {
42+
throw new Error('Milestone "v3" was not found.');
43+
}
44+
await github.rest.issues.update({
45+
owner: context.repo.owner,
46+
repo: context.repo.repo,
47+
issue_number: issueNumber,
48+
milestone: milestone.number,
49+
});

0 commit comments

Comments
 (0)