Skip to content

Automatically labels your PRs based on branch name patterns like feature/* or fix/*.

License

Notifications You must be signed in to change notification settings

TimonVS/pr-labeler-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

506f1ec Β· Feb 9, 2024
Feb 9, 2024
Nov 8, 2021
Feb 9, 2024
Feb 9, 2024
Feb 9, 2024
Feb 9, 2024
Feb 9, 2024
Apr 6, 2019
Jul 24, 2021
Feb 9, 2024
Nov 8, 2021
Feb 9, 2024
Jul 24, 2021
Feb 9, 2024
Feb 9, 2024
Nov 8, 2021
Feb 9, 2024
Feb 9, 2024
Nov 8, 2021

Repository files navigation

PR Labeler

All Contributors

A GitHub Action that automatically applies labels to your PRs based on branch name patterns like feature/* or fix/*. Can be used in combination with Release Drafter to automatically categorize pull requests.

Usage

Add .github/workflows/pr-labeler.yml with the following:

name: PR Labeler
on:
  pull_request:
    types: [opened]

permissions:
  contents: read

jobs:
  pr-labeler:
    permissions:
      contents: read # for TimonVS/pr-labeler-action to read config file
      pull-requests: write # for TimonVS/pr-labeler-action to add labels in PR
    runs-on: ubuntu-latest
    steps:
      - uses: TimonVS/pr-labeler-action@v5
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
          configuration-path: .github/pr-labeler.yml # optional, .github/pr-labeler.yml is the default value

Configuration

Configure by creating a .github/pr-labeler.yml file.

For example:

feature: ['feature/*', 'feat/*']
fix: fix/*
chore :hammer:: chore/*

Then if a pull request is opened with the branch name feature/218-add-emoji-support the Action will automatically apply the feature label.

Similarly, if a pull requests is opened with the branch name fix/weird-bug or chore/annual-refactoring-job, the Action will apply the fix or chore πŸ”¨ label, respectively.

If the label does not exist in your repo, a new one will be created (with no color and blank description), but it will not be permanently saved to the github.com/<your_repo>/labels page.

Wildcard branches in configuration

You can use * as a wildcard for matching multiple branch names. See https://www.npmjs.com/package/matcher for more information about wildcard options.

Default configuration

When no configuration is provided, the following defaults will be used:

feature: ['feature/*', 'feat/*']
fix: 'fix/*'
chore: 'chore/*'

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Timon van Spronsen
Timon van Spronsen

πŸ’» πŸ€” ⚠️ πŸ“–
Clemens Bastian
Clemens Bastian

πŸ’» πŸ“– πŸ›
Hugo van Rijswijk
Hugo van Rijswijk

πŸ’»

This project follows the all-contributors specification. Contributions of any kind welcome!