Skip to main content

Issue にラベルを追加する

GitHub Actions を使用して、Issue に自動的にラベルを付けることができます。

注: GitHub ホステッド ランナーは、現在 GitHub Enterprise Server でサポートされていません。 GitHub public roadmap で、今後の計画的なサポートの詳細を確認できます。

はじめに

このチュートリアルでは、ワークフローで actions/github-script アクションを使用して、新しくオープンまたは再オープンした Issue にラベルを付ける方法を示します。 たとえば、Issue をオープンまたは再オープンするたびに triage ラベルを追加できます。 次に、triage ラベルで Issue をフィルター処理して、トリアージする必要のあるすべての Issue を確認できます。

actions/github-script アクションを使うと、ワークフローで GitHub API を簡単に使用できます。

チュートリアルでは、actions/github-script アクションを使用するワークフロー ファイルをまず作成します。 次に、ニーズに合わせてワークフローをカスタマイズします。

ワークフローの作成

  1. このプロジェクト管理ワークフローを適用したいリポジトリを選択してください。 書き込みアクセス権を持つ既存のリポジトリを利用することも、新しいリポジトリを作成することもできます。 リポジトリの作成の詳細については、「新しいリポジトリの作成」を参照してください。

  2. リポジトリに .github/workflows/YOUR_WORKFLOW.yml というファイルを作成します (YOUR_WORKFLOW は任意の名前に置き換えます)。 これがワークフローファイルです。 GitHub での新しいファイルの作成の詳細については、「新しいファイルの作成」を参照してください。

  3. 次の YAML コンテンツをワークフローファイルにコピーします。

    YAML
    name: Label issues
    on:
      issues:
        types:
          - reopened
          - opened
    jobs:
      label_issues:
        runs-on: ubuntu-latest
        permissions:
          issues: write
        steps:
          - uses: actions/github-script@v6
            with:
              script: |
                github.rest.issues.addLabels({
                  issue_number: context.issue.number,
                  owner: context.repo.owner,
                  repo: context.repo.repo,
                  labels: ["triage"]
                })
  4. ワークフロー ファイルの script パラメーターをカスタマイズします。

    • issue_numberownerrepo の値は、context オブジェクトを使って自動的に設定されます。 これらを変更する必要はありません。
    • labels の値を、Issue に追加するラベルのリストに変更します。 複数のラベルはコンマで区切ります。 たとえば、「 ["help wanted", "good first issue"] 」のように入力します。 ラベルの詳細については、「ラベルを管理する」を参照してください。
  5. ワークフローファイルを、リポジトリのデフォルトブランチにコミットしてください。 詳細については、「新しいファイルの作成」を参照してください。

ワークフローのテスト

リポジトリ内の Issue をオープンするか再オープンするたびに、このワークフローは指定したラベルを Issue に追加します。

リポジトリに Issue を作成して、ワークフローをテストします。

  1. リポジトリで Issue を作成します。 詳細については、「Issue の作成」を参照してください。
  2. Issue の作成によってトリガーされたワークフローの実行を確認するには、ワークフローの実行履歴を表示します。 詳細については、「ワークフロー実行の履歴を表示する」を参照してください。
  3. ワークフローが完了すると、作成した Issue に指定されたラベルが追加されます。

次の手順