Skip to content

Commit c86b582

Browse files
authored
fix: update github pkg imports
1 parent 0767a26 commit c86b582

File tree

1 file changed

+16
-12
lines changed

1 file changed

+16
-12
lines changed

.github/workflows/codereview.yml

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Auto-Approve Pull Requests
1+
name: Auto-Approve and Merge Pull Requests
22

33
on:
44
pull_request:
@@ -8,37 +8,41 @@ on:
88
workflow_dispatch:
99

1010
jobs:
11-
auto-approve:
11+
auto-approve-and-merge:
1212
runs-on: ubuntu-latest
1313
permissions:
1414
pull-requests: write
15+
contents: write
1516

1617
steps:
1718
- name: Checkout repository
1819
uses: actions/checkout@v3
1920

20-
- name: Auto-approve Pull Requests
21+
- name: Install PyGithub
22+
run: pip install PyGithub
23+
24+
- name: Auto-approve and Merge Pull Requests
2125
env:
2226
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
2327
run: |
2428
import os
2529
from github import Github
26-
27-
def approve_pr(pr):
30+
def approve_and_merge_pr(pr):
2831
pr.create_review(event='APPROVE', body='Automatically approved')
2932
print(f"Approved PR #{pr.number}")
30-
33+
if pr.mergeable:
34+
pr.merge(merge_method='squash')
35+
print(f"Merged PR #{pr.number}")
36+
else:
37+
print(f"PR #{pr.number} is not mergeable")
3138
g = Github(os.getenv('GITHUB_TOKEN'))
3239
repo = g.get_repo(os.getenv('GITHUB_REPOSITORY'))
33-
3440
if os.getenv('GITHUB_EVENT_NAME') == 'pull_request':
3541
pr_number = os.getenv('GITHUB_EVENT_PULL_REQUEST_NUMBER')
3642
pr = repo.get_pull(int(pr_number))
37-
approve_pr(pr)
43+
approve_and_merge_pr(pr)
3844
else:
3945
for pr in repo.get_pulls(state='open'):
40-
approve_pr(pr)
41-
42-
print("Auto-approval process completed successfully.")
46+
approve_and_merge_pr(pr)
47+
print("Auto-approval and merge process completed successfully.")
4348
shell: python
44-

0 commit comments

Comments
 (0)