Skip to content

[ENV][Docs] #1 : [Env][Docs] #1 : Docusaurus 기반, 프로젝트 전체 문서 CI/CD 설정 및 충돌 오류 해결 #49

[ENV][Docs] #1 : [Env][Docs] #1 : Docusaurus 기반, 프로젝트 전체 문서 CI/CD 설정 및 충돌 오류 해결

[ENV][Docs] #1 : [Env][Docs] #1 : Docusaurus 기반, 프로젝트 전체 문서 CI/CD 설정 및 충돌 오류 해결 #49

name: 'Auto Assign Reviewers'
on:
pull_request:
types: [opened, labeled]
jobs:
assign_reviewers:
runs-on: ubuntu-latest
steps:
- name: 'Set Assignee to Author'
uses: actions/github-script@v6
with:
script: |
if (context.payload.pull_request) {
await github.rest.issues.addAssignees({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.payload.pull_request.number,
assignees: [context.payload.pull_request.user.login],
});
} else {
console.log('No pull_request data found in context.payload');
}
- name: 'Add "확인 요청" Label if not present'
uses: actions/github-script@v6
with:
script: |
const labels = context.payload.pull_request.labels || [];
if (!labels.some(label => label.name === '확인 요청')) {
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.payload.pull_request.number,
labels: ['확인 요청'],
});
}
- name: 'Determine Number of Reviewers'
id: determine_reviewers
uses: actions/github-script@v6
with:
script: |
const targetBranch = context.payload.pull_request.base.ref;
const reviewers = targetBranch === 'main' ? 3 : 2;
core.setOutput('number_of_reviewers', reviewers);
- name: 'Assign Reviewers'
uses: kentaro-m/[email protected]
with:
repo-token: '${{ secrets.GITHUB_TOKEN }}'
configuration-path: '.github/auto_assign_config.yml'
numberOfReviewers: ${{ steps.determine_reviewers.outputs.number_of_reviewers }}