참고: GitHub 호스트 실행기는 현재 GitHub Enterprise Server에서 지원되지 않습니다. GitHub public roadmap에 예정된 향후 지원에 대해 자세히 알아볼 수 있습니다.
소개
이 자습서에서는 imjohnbo/issue-bot
작업을 사용하여 정기적으로 문제를 만드는 방법을 보여 줍니다. 예를 들어 매주 문제를 만들어 팀 모임의 어젠더로 사용할 수 있습니다.
자습서에서는 먼저 imjohnbo/issue-bot
작업을 사용하는 워크플로 파일을 만듭니다. 그런 다음 필요에 맞게 워크플로를 사용자 지정합니다.
워크플로 만들기
-
이 프로젝트 관리 워크플로를 적용할 리포지토리를 선택합니다. 쓰기 권한이 있는 기존 리포지토리를 사용하거나 새 리포지토리를 만들 수 있습니다. 리포지토리를 만드는 방법에 대한 자세한 내용은 "새 리포지토리 만들기"을 참조하세요.
-
리포지토리에서
YOUR_WORKFLOW
를 선택한 이름으로 바꾸는.github/workflows/YOUR_WORKFLOW.yml
파일을 만듭니다. 워크플로 파일입니다. GitHub에서 새 파일을 만드는 방법에 대한 자세한 내용은 "AUTOTITLE"을 참조하세요. -
다음 YAML 콘텐츠를 워크플로 파일에 복사합니다.
YAML # 이 워크플로는 GitHub에서 인증되지 않은 작업을 사용합니다. # 작업은 타사에서 제공하며 # 별도의 서비스 약관, 개인정보처리방침, 지원 설명서에서 규정됩니다. # 참조하세요. # 커밋 SHA에 작업을 고정하는 것이 좋습니다. # 최신 버전을 얻으려면 SHA를 업데이트해야 합니다. # 태그 또는 분기를 참조할 수도 있지만 경고 없이 작업이 변경될 수 있습니다. name: Weekly Team Sync on: schedule: - cron: 20 07 * * 1 jobs: create_issue: name: Create team sync issue runs-on: ubuntu-latest permissions: issues: write steps: - name: Create team sync issue uses: imjohnbo/issue-bot@3d96848fb5e9a4a473bb81ae62b4b4866a56e93a with: assignees: "monalisa, doctocat, hubot" labels: "weekly sync, docs-team" title: "Team sync" body: | ### Agenda - [ ] Start the recording - [ ] Check-ins - [ ] Discussion points - [ ] Post the recording ### Discussion Points Add things to discuss below - [Work this week](https://github.com/orgs/github/projects/3) pinned: false close-previous: false env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
워크플로 파일에서 매개 변수를 사용자 지정합니다.
on.schedule
값을 변경하여 이 워크플로를 실행할 시기를 지시합니다. 위의 예제에서 워크플로는 매주 월요일 7:20 UTC에 실행됩니다. 예약된 워크플로에 대한 자세한 내용은 "워크플로를 트리거하는 이벤트"을 참조하세요.assignees
의 값을 문제에 할당하려는 GitHub 사용자 이름 목록으로 바꿉니다.labels
값을 이슈에 적용할 레이블 목록으로 변경합니다.title
의 값을 문제에 포함할 제목으로 변경합니다.body
의 값을 문제 본문에 원하는 텍스트로 변경합니다.|
문자를 사용하면 이 매개 변수에 여러 줄 값을 사용할 수 있습니다.- 이 문제를 리포지토리에 고정하려면
pinned
를true
로 설정하십시오. 고정된 문제에 대한 자세한 내용은 "리포지토리에 문제 고정"을 참조하세요. - 새 문제가 생성될 때마다 이 워크플로에서 생성된 이전 문제를 닫으려면
close-previous
를true
로 설정합니다. 워크플로는labels
필드에 레이블이 정의된 가장 최근 문제를 닫습니다. 잘못된 문제를 닫지 않도록 하려면 고유한 레이블 또는 레이블 조합을 사용합니다.
-
워크플로 파일을 리포지토리의 기본 분기에 커밋합니다. 자세한 내용은 "새 파일 만들기"을 참조하세요.
예상 결과
schedule
매개 변수(예: 매주 월요일 UTC 7:20)에 따라 워크플로는 지정한 담당자, 레이블, 제목, 본문으로 새 문제를 만듭니다. pinned
를 true
로 설정하면 워크플로가 문제를 리포지토리에 고정합니다. close-previous
를 true로 설정하면 워크플로에서 레이블이 일치하는 가장 최근 문제를 닫습니다.
참고: GitHub Actions 워크플로가 실행되는 로드가 많은 기간 동안 schedule
이벤트가 지연될 수 있습니다. 높은 로드 시간에는 매 시간의 시작이 포함됩니다. 부하가 충분히 높으면 일부 큐에 대기 중인 작업이 삭제될 수 있습니다. 지연 가능성을 줄이려면 워크플로가 다른 시간에 실행되도록 예약합니다.
워크플로 실행 기록을 보고 이 워크플로 실행을 주기적으로 확인할 수 있습니다. 자세한 내용은 "워크플로 실행 기록 보기"을 참조하세요.
다음 단계
- 담당자 순환 또는 문제 템플릿 사용과 같이
imjohnbo/issue-bot
작업으로 수행할 수 있는 추가 작업에 대한 자세한 내용은imjohnbo/issue-bot
작업 문서를 참조하세요. - GitHub 검색을 통해 이 작업을 사용하는 워크플로의 예제를 확인합니다.