1. Resources
  2. /
  3. Plugins
  4. /
  5. github-pr-labels-buildkite-plugin

GitHub PR Labels Buildkite Plugin

Retrieve the labels associated with a GitHub Pull Request and publish them as environment variable and/or build meta-data.

Multiple labels will appear as comma-separated values.

Pre-requisites for private repositories

When using with a private repository, a valid GitHub token (PAT) must be provided. It can be provided either inside an environment variable or inside a file. Other plugins can be used before this plugin to set up the token.

Examples

Publish the labels as environment variable (public repository)

The comma-separated list of labels will be published in the PULL_REQUEST_LABELS environment variable. The variable is accessible to all subsequent commands and plugins within the same step.

steps:
  - command: echo $$PULL_REQUEST_LABELS
    plugins:
      - sv-oss/github-pr-labels#v0.0.2:
          publish-env-var: PULL_REQUEST_LABELS

Publish the labels as environment variable (private repository)

In this example a valid GitHub token has been pre-loaded inside the GITHUB_TOKEN environment variable

The comma-separated list of labels will be published in the PULL_REQUEST_LABELS environment variable. The variable is accessible to all subsequent commands and plugins within the same step.

steps:
  - command: echo $$PULL_REQUEST_LABELS
    plugins:
      - sv-oss/github-pr-labels#v0.0.2:
          token-from:
            env: GITHUB_TOKEN
          publish-env-var: PULL_REQUEST_LABELS

Publish the labels as build meta-data (private repository)

In this example a valid GitHub token has been pre-loaded inside the /etc/github/token file

The comma-separated list of labels will be available in the pull-request-labels meta-data key. The meta-data key is accessible on all subsequent steps of the pipeline.

steps:
  - command: buildkite-agent meta-data get pull-request-labels
    plugins:
      - sv-oss/github-pr-labels#v0.0.2:
          token-from:
            file: /etc/github/token
          publish-metadata-key: pull-request-labels
  - wait: ~
  - command: buildkite-agent meta-data get pull-request-labels

Configuration

token-from (optional, {file | env})

Datasource for the github token. One of file or env subkeys must be provided

file (optional[mutually-exclusive with env], string)

File containing the github token

env (optional[mutually-exclusive with file], string)

Env var containing the github token

publish-env-var (optional, string)

Enables publishing the labels in an environment variable of specified name

publish-metadata-key (optional, string)

Enables publishing the labels in a build meta-data key of specified name

Developing

To run the tests:

docker-compose run --rm tests

Contributing

  1. Fork the repo
  2. Make the changes
  3. Run the tests
  4. Commit and push your changes
  5. Send a pull request

The plugins listed on this webpage are provided for informational purposes only. They have not undergone any formal security review or assessment. While we strive to provide useful resources, we cannot guarantee the safety, reliability, or integrity of these plugins. Users are strongly advised to conduct their own security evaluations before downloading, installing, or using any plugin. By using these plugins, you acknowledge and accept any risks associated with their use. We disclaim any liability for any harm or damages arising from the use of the plugins listed.

Start turning complexity into an advantage

Create an account to get started with a 30-day free trial. No credit card required.

Buildkite Pipelines

Platform

  1. Pipelines
  2. Pipeline templates
  3. Public pipelines
  4. Test Engine
  5. Package Registries
  6. Mobile Delivery Cloud
  7. Pricing

Hosting options

  1. Self-hosted agents
  2. Mac hosted agents
  3. Linux hosted agents

Resources

  1. Docs
  2. Blog
  3. Changelog
  4. Webinars
  5. Plugins
  6. Case studies
  7. Events
  8. Migration Services
  9. Comparisons

Company

  1. About
  2. Careers
  3. Press
  4. Brand assets
  5. Contact

Solutions

  1. Replace Jenkins
  2. Workflows for AI/ML
  3. Testing at scale
  4. Monorepo mojo
  5. Bazel orchestration

Legal

  1. Terms of Service
  2. Acceptable Use Policy
  3. Privacy Policy
  4. Subprocessors
  5. Service Level Agreement

Support

  1. System status
  2. Forum
© Buildkite Pty Ltd 2025