Skip to content

Commit

Permalink
chore(workflow): improve random reviewer assignment logic
Browse files Browse the repository at this point in the history
Signed-off-by: Wanjin Noh <wanjin@megazone.com>
  • Loading branch information
WANZARGEN committed Feb 17, 2025
1 parent a4d358b commit 8f8a6ce
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions .github/workflows/pull_request_random_reviewer_assignment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,7 @@ jobs:
runs-on: ubuntu-latest

env:
GROUP1: '["WANZARGEN", "sulmoJ", "skdud4659", "piggggggggy"]'
GROUP2: '["kkdy21", "seungyeoneeee", "Hansoo-mzc"]'
REVIEWERS: '["WANZARGEN", "seungyeoneeee", "skdud4659", "piggggggggy"]'

steps:
- uses: actions/checkout@v3
Expand All @@ -30,12 +29,13 @@ jobs:
uses: actions/github-script@v6
with:
script: |
const group1 = JSON.parse(process.env.GROUP1).filter(user => user !== context.payload.pull_request.user.login);
const group2 = JSON.parse(process.env.GROUP2).filter(user => user !== context.payload.pull_request.user.login);
console.log('group1:', group1, 'group2:', group2);
const reviewers = JSON.parse(process.env.REVIEWERS).filter(user => user !== context.payload.pull_request.user.login);
console.log('available reviewers:', reviewers);
const randomReviewer1 = group1[Math.floor(Math.random() * group1.length)];
const randomReviewer2 = group2[Math.floor(Math.random() * group2.length)];
// Shuffle array and pick first two reviewers
const shuffled = reviewers.sort(() => 0.5 - Math.random());
const randomReviewer1 = shuffled[0];
const randomReviewer2 = shuffled[1];
console.log('randomReviewer1:', randomReviewer1, 'randomReviewer2:', randomReviewer2);
core.setOutput('randomReviewer1', randomReviewer1);
Expand Down

0 comments on commit 8f8a6ce

Please sign in to comment.