Skip to content

Init: React Router 기반 라우터 초기 세팅 #5

Init: React Router 기반 라우터 초기 세팅

Init: React Router 기반 라우터 초기 세팅 #5

Workflow file for this run

name: Auto Assign Reviewers
on:
issues:
types: [opened]
pull_request:
types: [opened, ready_for_review, reopened]
permissions:
issues: write
pull-requests: write
contents: read
jobs:
assign-reviewers:
runs-on: ubuntu-latest
steps:
- name: Assign author and reviewers
uses: actions/github-script@v7
with:
script: |
const reviewers = [
"jyeon03",
"chungyo",
"nyewon",
"gyeongbibin",
"seojin15"
];
if (context.payload.issue && !context.payload.pull_request) {
const issueAuthor = context.payload.issue.user.login;
await github.rest.issues.addAssignees({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
assignees: [issueAuthor],
});
console.log(`Issue Assignee: ${issueAuthor}`);
return;
}
const pr = context.payload.pull_request;
const author = pr.user.login;
if (pr.draft) {
console.log("Draft PR은 리뷰어 할당을 건너뜁니다.");
return;
}
const selectedReviewers = reviewers.filter(
(reviewer) => reviewer !== author
);
await github.rest.issues.addAssignees({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: pr.number,
assignees: [author],
});
await github.rest.pulls.requestReviewers({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: pr.number,
reviewers: selectedReviewers,
});
console.log(`PR Assignee: ${author}`);
console.log(`Reviewers: ${selectedReviewers.join(", ")}`);