Skip to content

Commit b2b60ed

Browse files
test review
1 parent 20e6084 commit b2b60ed

File tree

2 files changed

+63
-9
lines changed

2 files changed

+63
-9
lines changed
Lines changed: 61 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,75 @@
11
name: add-assignee-and-reviewers
2+
23
on:
34
pull_request_target:
4-
types: [ready_for_review, opened, reopened]
5+
types: [ready_for_review, opened, reopened, review_requested, edited]
56

67
permissions:
7-
contents: none
8+
contents: read
89
issues: write
9-
pull-requests: write
10+
pull-requests: read
1011

1112
jobs:
1213
add-assignee-and-reviewers:
1314
runs-on: ubuntu-latest
1415
if: ${{ github.event.pull_request.user.type != 'Bot' }}
1516
steps:
16-
- name: Request reviewers
17+
- name: Set up GitHub CLI
18+
uses: cli/cli-action@v2
19+
with:
20+
version: latest
21+
22+
- name: Authenticate GitHub CLI
23+
env:
24+
GH_TOKEN: ${{ secrets.AST_CLI_GH_TOKEN }}
25+
run: gh auth status
26+
27+
- name: Fetch team members
28+
id: team
29+
env:
30+
GH_TOKEN: ${{ secrets.AST_CLI_GH_TOKEN }}
31+
run: |
32+
gh api orgs/CheckmarxDev/teams/ast-sypher-team/members --jq '.[].login' > team_members.txt
33+
echo "✅ Team members:"
34+
cat team_members.txt
35+
36+
- name: Fetch current reviewers
37+
id: reviewers
1738
env:
18-
GH_REPO: ${{ github.repository }}
1939
GH_TOKEN: ${{ secrets.AST_CLI_GH_TOKEN }}
20-
PRNUM: ${{ github.event.pull_request.number }}
21-
PRAUTHOR: ${{ github.event.pull_request.user.login }}
22-
run: gh pr edit $PRNUM --add-reviewer CheckmarxDev/ast-sypher-team
40+
run: |
41+
gh pr view ${{ github.event.pull_request.number }} --json reviewRequests --jq '.reviewRequests' > all_reviewers.json
42+
43+
jq -r '.[] | select(.type == "User") | .login' all_reviewers.json > user_reviewers.txt
44+
jq -r '.[] | select(.type == "Team") | .login' all_reviewers.json > team_reviewers.txt
45+
46+
echo "👤 User reviewers:"
47+
cat user_reviewers.txt || echo "None"
48+
49+
echo "👥 Team reviewers:"
50+
cat team_reviewers.txt || echo "None"
51+
52+
- name: Validate reviewers are only from ast-sypher-team
53+
run: |
54+
INVALID_USERS=()
55+
while read reviewer; do
56+
if ! grep -qx "$reviewer" team_members.txt; then
57+
INVALID_USERS+=("$reviewer")
58+
fi
59+
done < user_reviewers.txt || true
60+
61+
INVALID_TEAMS=()
62+
while read team; do
63+
if [ "$team" != "ast-sypher-team" ]; then
64+
INVALID_TEAMS+=("$team")
65+
fi
66+
done < team_reviewers.txt || true
67+
68+
if [ ${#INVALID_USERS[@]} -gt 0 ] || [ ${#INVALID_TEAMS[@]} -gt 0 ]; then
69+
echo "❌ Invalid reviewers detected!"
70+
echo "Invalid users: ${INVALID_USERS[*]}"
71+
echo "Invalid teams: ${INVALID_TEAMS[*]}"
72+
exit 1
73+
fi
74+
75+
echo "✅ All reviewers are valid members of the ast-sypher-team or the team itself."

CODEOWNERS

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@
22
# Each line is a file pattern followed by one or more owners
33

44
# Specify the default owners for the entire repository
5-
* @AlvoBen @greensd4 @miryamfoiferCX
5+
* @cx-anurag-dalke @cx-rah-pid
6+

0 commit comments

Comments
 (0)