Skip to content

Commit 5aa41ab

Browse files
ci(workflow): create/update PR from develop to main on push
1 parent ba04c51 commit 5aa41ab

1 file changed

Lines changed: 43 additions & 0 deletions

File tree

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
name: Promote develop to main
2+
on:
3+
push:
4+
branches: [develop]
5+
permissions:
6+
contents: write
7+
pull-requests: write
8+
jobs:
9+
create_pr:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Create or update PR to main
13+
uses: actions/github-script@v6
14+
with:
15+
script: |
16+
const prTitle = 'Promote develop to main';
17+
const prBody = 'Automated PR to propose changes from develop to main. Review and merge according to repo policy.';
18+
const { data: prs } = await github.rest.pulls.list({
19+
owner: context.repo.owner,
20+
repo: context.repo.repo,
21+
state: 'open',
22+
head: `${context.repo.owner}:develop`,
23+
base: 'main',
24+
});
25+
if (prs.length === 0) {
26+
await github.rest.pulls.create({
27+
owner: context.repo.owner,
28+
repo: context.repo.repo,
29+
title: prTitle,
30+
head: 'develop',
31+
base: 'main',
32+
body: prBody,
33+
});
34+
} else {
35+
const pr = prs[0];
36+
await github.rest.pulls.update({
37+
owner: context.repo.owner,
38+
repo: context.repo.repo,
39+
pull_number: pr.number,
40+
title: prTitle,
41+
body: prBody,
42+
});
43+
}

0 commit comments

Comments
 (0)