Skip to main content

이슈에 레이블 추가

GitHub Actions을(를) 사용하여 이슈에 자동으로 레이블을 지정할 수 있습니다.

소개

이 튜토리얼에서는 워크플로의 GitHub CLI을(를) 사용하여 새로 열렸거나 다시 열린 이슈에 레이블을 지정하는 방법을 보여줍니다. 예를 들어 이슈가 열리거나 다시 열릴 때마다 triage 레이블을 추가할 수 있습니다. 그런 다음, triage 레이블이 있는 이슈를 필터링하여 심사해야 하는 모든 이슈를 확인할 수 있습니다.

이 GitHub CLI을(를) 통해 워크플로에서 GitHub API를 쉽게 사용할 수 있습니다.

이 자습서에서는 먼저 GitHub CLI을(를) 사용하는 워크플로 파일을 만듭니다. 그런 다음 필요에 맞게 워크플로를 사용자 지정합니다.

워크플로 만들기

  1. 이 프로젝트 관리 워크플로를 적용할 리포지토리를 선택합니다. 쓰기 권한이 있는 기존 리포지토리를 사용하거나 새 리포지토리를 만들 수 있습니다. 리포지토리를 만드는 자세한 내용은 “새 리포지토리 만들기”를 참조하세요.

  2. 리포지토리에서 YOUR_WORKFLOW를 선택한 이름으로 바꾸는 .github/workflows/YOUR_WORKFLOW.yml 파일을 만듭니다. 워크플로 파일입니다. GitHub에서 새 파일을 만드는 방법에 대한 자세한 내용은 “새 파일 만들기”를 참조하세요.

  3. 다음 YAML 콘텐츠를 워크플로 파일에 복사합니다.

    YAML
    name: Label issues
    on:
      issues:
        types:
          - reopened
          - opened
    jobs:
      label_issues:
        runs-on: ubuntu-latest
        permissions:
          issues: write
        steps:
          - run: gh issue edit "$NUMBER" --add-label "$LABELS"
            env:
              GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
              GH_REPO: ${{ github.repository }}
              NUMBER: ${{ github.event.issue.number }}
              LABELS: triage
    
  4. 다음 워크플로 파일에서 env 값을 사용자 지정합니다.

    • GH_TOKEN, GH_REPONUMBER 값은 githubsecrets 컨텍스트를 사용하여 자동으로 설정됩니다. 이러한 항목을 변경할 필요가 없습니다.
    • LABELS 값을 이슈에 추가할 레이블 목록으로 변경합니다. 리포지토리에 대한 레이블이 있어야 합니다. 여러 레이블을 쉼표로 구분합니다. 예들 들어 help wanted,good first issue입니다. 라벨에 대한 자세한 내용은 "레이블 관리"을 참조하세요.
  5. 워크플로 파일을 리포지토리의 기본 분기에 커밋합니다. 자세한 내용은 "새 파일 만들기"을(를) 참조하세요.

워크플로 테스트

리포지토리의 이슈가 열리거나 다시 열릴 때마다 이 워크플로는 지정된 레이블을 이슈에 추가합니다.

리포지토리에서 이슈를 만들어 워크플로를 테스트합니다.

  1. 리포지토리에서 이슈를 만듭니다. 자세한 내용은 "문제 만들기"을 참조하세요.
  2. 이슈를 만들어 트리거된 워크플로 실행을 확인하려면 워크플로 실행 기록을 살펴봅니다. 자세한 내용은 "워크플로 실행 기록 보기"을 참조하세요.
  3. 워크플로가 완료될 때 만든 이슈에 지정된 레이블이 추가되어 있어야 합니다.

다음 단계

  • GitHub CLI을(를) 사용하여 수행할 수 있는 추가 작업을 자세히 알아보려면 GitHub CLI 매뉴얼을 참조하세요.
  • 워크플로를 트리거할 수 있는 다양한 이벤트에 대한 자세한 내용은 "워크플로를 트리거하는 이벤트"을 참조하세요.
  • GitHub 검색을 통해 gh issue edit을(를) 사용하는 워크플로의 예.