Skip to content

Commit 5adea6b

Browse files
authored
Automated bump pr approve (#146)
* Added make prerelease and make release workflows * More fixes to bump workflow
1 parent 7976f99 commit 5adea6b

File tree

5 files changed

+168
-8
lines changed

5 files changed

+168
-8
lines changed

.github/workflows/bump-major.yml

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,37 @@ jobs:
2828
git push --set-upstream origin release-version-$(jq -r '.version' package.json)
2929
3030
- name: Create Pull Request
31+
id: create-pr
3132
uses: actions/github-script@v6
3233
with:
3334
script: |
3435
const { owner, repo } = context.repo;
35-
const branchName = `release-version-${require('./package.json').version}`;
36-
await github.rest.pulls.create({
36+
const branchName = `bump-version-${require('./package.json').version}`;
37+
const pr = await github.rest.pulls.create({
3738
owner,
3839
repo,
3940
title: `feat: Bump version to ${require('./package.json').version}`,
4041
head: branchName,
4142
base: 'develop',
4243
});
44+
core.setOutput('pr_number', pr.data.number);
45+
46+
- name: Approve Pull Request
47+
uses: actions/github-script@v6
48+
with:
49+
github-token: ${{ secrets.GITHUB_TOKEN }}
50+
script: |
51+
const prNumber = process.env.PR_NUMBER;
52+
if (!prNumber) {
53+
console.log("No PR number found. Skipping approval.");
54+
return;
55+
}
56+
await github.rest.pulls.createReview({
57+
owner: context.repo.owner,
58+
repo: context.repo.repo,
59+
pull_number: prNumber,
60+
event: 'APPROVE',
61+
body: 'This PR was automatically approved by the workflow.'
62+
});
63+
env:
64+
PR_NUMBER: ${{ steps.create-pr.outputs.pr_number }}

.github/workflows/bump-minor.yml

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,37 @@ jobs:
2828
git push --set-upstream origin release-version-$(jq -r '.version' package.json)
2929
3030
- name: Create Pull Request
31+
id: create-pr
3132
uses: actions/github-script@v6
3233
with:
3334
script: |
3435
const { owner, repo } = context.repo;
35-
const branchName = `release-version-${require('./package.json').version}`;
36-
await github.rest.pulls.create({
36+
const branchName = `bump-version-${require('./package.json').version}`;
37+
const pr = await github.rest.pulls.create({
3738
owner,
3839
repo,
3940
title: `feat: Bump version to ${require('./package.json').version}`,
4041
head: branchName,
4142
base: 'develop',
4243
});
44+
core.setOutput('pr_number', pr.data.number);
45+
46+
- name: Approve Pull Request
47+
uses: actions/github-script@v6
48+
with:
49+
github-token: ${{ secrets.GITHUB_TOKEN }}
50+
script: |
51+
const prNumber = process.env.PR_NUMBER;
52+
if (!prNumber) {
53+
console.log("No PR number found. Skipping approval.");
54+
return;
55+
}
56+
await github.rest.pulls.createReview({
57+
owner: context.repo.owner,
58+
repo: context.repo.repo,
59+
pull_number: prNumber,
60+
event: 'APPROVE',
61+
body: 'This PR was automatically approved by the workflow.'
62+
});
63+
env:
64+
PR_NUMBER: ${{ steps.create-pr.outputs.pr_number }}

.github/workflows/bump-patch.yml

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,19 +24,41 @@ jobs:
2424
git config user.name "github-actions"
2525
git config user.email "github-actions@github.com"
2626
npm version patch
27-
git checkout -b release-version-$(jq -r '.version' package.json)
28-
git push --set-upstream origin release-version-$(jq -r '.version' package.json)
27+
git checkout -b bump-version-$(jq -r '.version' package.json)
28+
git push --set-upstream origin bump-version-$(jq -r '.version' package.json)
2929
3030
- name: Create Pull Request
31+
id: create-pr
3132
uses: actions/github-script@v6
3233
with:
3334
script: |
3435
const { owner, repo } = context.repo;
35-
const branchName = `release-version-${require('./package.json').version}`;
36-
await github.rest.pulls.create({
36+
const branchName = `bump-version-${require('./package.json').version}`;
37+
const pr = await github.rest.pulls.create({
3738
owner,
3839
repo,
3940
title: `feat: Bump version to ${require('./package.json').version}`,
4041
head: branchName,
4142
base: 'develop',
4243
});
44+
core.setOutput('pr_number', pr.data.number);
45+
46+
- name: Approve Pull Request
47+
uses: actions/github-script@v6
48+
with:
49+
github-token: ${{ secrets.GITHUB_TOKEN }}
50+
script: |
51+
const prNumber = process.env.PR_NUMBER;
52+
if (!prNumber) {
53+
console.log("No PR number found. Skipping approval.");
54+
return;
55+
}
56+
await github.rest.pulls.createReview({
57+
owner: context.repo.owner,
58+
repo: context.repo.repo,
59+
pull_number: prNumber,
60+
event: 'APPROVE',
61+
body: 'This PR was automatically approved by the workflow.'
62+
});
63+
env:
64+
PR_NUMBER: ${{ steps.create-pr.outputs.pr_number }}
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: Make Pre-Release
2+
3+
on:
4+
workflow_dispatch:
5+
6+
permissions:
7+
contents: write
8+
pull-requests: write
9+
10+
jobs:
11+
bump_version:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Create Pull Request
15+
id: create-pr
16+
uses: actions/github-script@v6
17+
with:
18+
script: |
19+
const { owner, repo } = context.repo;
20+
const pr = await github.rest.pulls.create({
21+
owner,
22+
repo,
23+
title: `Creating Release: ${require('./package.json').version}`,
24+
head: 'develop',
25+
base: 'pre-release',
26+
});
27+
core.setOutput('pr_number', pr.data.number);
28+
29+
- name: Approve Pull Request
30+
uses: actions/github-script@v6
31+
with:
32+
github-token: ${{ secrets.GITHUB_TOKEN }}
33+
script: |
34+
const prNumber = process.env.PR_NUMBER;
35+
if (!prNumber) {
36+
console.log("No PR number found. Skipping approval.");
37+
return;
38+
}
39+
await github.rest.pulls.createReview({
40+
owner: context.repo.owner,
41+
repo: context.repo.repo,
42+
pull_number: prNumber,
43+
event: 'APPROVE',
44+
body: 'This PR was automatically approved by the workflow.'
45+
});
46+
env:
47+
PR_NUMBER: ${{ steps.create-pr.outputs.pr_number }}

.github/workflows/make-release.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: Make Release
2+
3+
on:
4+
workflow_dispatch:
5+
6+
permissions:
7+
contents: write
8+
pull-requests: write
9+
10+
jobs:
11+
bump_version:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Create Pull Request
15+
id: create-pr
16+
uses: actions/github-script@v6
17+
with:
18+
script: |
19+
const { owner, repo } = context.repo;
20+
const pr = await github.rest.pulls.create({
21+
owner,
22+
repo,
23+
title: `Creating Release: ${require('./package.json').version}`,
24+
head: 'develop',
25+
base: 'main',
26+
});
27+
core.setOutput('pr_number', pr.data.number);
28+
29+
- name: Approve Pull Request
30+
uses: actions/github-script@v6
31+
with:
32+
github-token: ${{ secrets.GITHUB_TOKEN }}
33+
script: |
34+
const prNumber = process.env.PR_NUMBER;
35+
if (!prNumber) {
36+
console.log("No PR number found. Skipping approval.");
37+
return;
38+
}
39+
await github.rest.pulls.createReview({
40+
owner: context.repo.owner,
41+
repo: context.repo.repo,
42+
pull_number: prNumber,
43+
event: 'APPROVE',
44+
body: 'This PR was automatically approved by the workflow.'
45+
});
46+
env:
47+
PR_NUMBER: ${{ steps.create-pr.outputs.pr_number }}

0 commit comments

Comments
 (0)