Skip to main content

Adding labels to issues

You can use GitHub Actions to automatically label issues.

Introduction

This tutorial demonstrates how to use the GitHub CLI in a workflow to label newly opened or reopened issues. For example, you can add the triage label every time an issue is opened or reopened. Then, you can see all issues that need to be triaged by filtering for issues with the triage label.

The GitHub CLI allows you to easily use the GitHub API in a workflow.

In the tutorial, you will first make a workflow file that uses the GitHub CLI. Then, you will customize the workflow to suit your needs.

Creating the workflow

  1. Выберите репозиторий, в котором вы хотите применить этот рабочий процесс управления проектами. Вы можете использовать существующий репозиторий, к которому у вас есть доступ для записи, или создать репозиторий. Дополнительные сведения о создании репозитория см. в разделе Создание репозитория.

  2. В репозитории создайте файл с именем .github/workflows/YOUR_WORKFLOW.yml, где YOUR_WORKFLOW — это любое имя на ваш выбор. Это файл рабочего процесса. Дополнительные сведения о создании новых файлов на сайте GitHub см. в разделе Создание новых файлов.

  3. Copy the following YAML contents into your workflow file.

    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. Customize the env values in your workflow file:

    • The GH_TOKEN, GH_REPO, and NUMBER values are automatically set using the github and secrets contexts. You do not need to change these.
    • Change the value for LABELS to the list of labels that you want to add to the issue. The label(s) must exist for your repository. Separate multiple labels with commas. For example, help wanted,good first issue. For more information about labels, see Управление метками.
  5. Зафиксируйте файл рабочего процесса в ветви по умолчанию вашего репозитория. Дополнительные сведения см. в разделе Создание новых файлов.

Testing the workflow

Every time an issue in your repository is opened or reopened, this workflow will add the labels that you specified to the issue.

Test out your workflow by creating an issue in your repository.

  1. Create an issue in your repository. For more information, see Создание проблемы.
  2. To see the workflow run that was triggered by creating the issue, view the history of your workflow runs. For more information, see Viewing workflow run history.
  3. When the workflow completes, the issue that you created should have the specified labels added.

Next steps