Skip to content

GitHub action to sync a repo's issue labels with the standard Origami set

Notifications You must be signed in to change notification settings

Financial-Times/origami-labels

Repository files navigation

Origami Labels

GitHub action to sync a repo's issue labels with the standard Origami set.

Usage

To use this action, create the following file in your GitHub repo:

.github/workflows/sync-repo-labels.yml
on: [issues, pull_request]
jobs:
  sync-labels:
    runs-on: ubuntu-latest
    name: Sync repository labels
    steps:
      - uses: Financial-Times/origami-labels@v1
        with:
          github-token: ${{ secrets.GITHUB_TOKEN }}

⚠️ Whenever an issue is opened, the workflow will execute. This overrides all labels in the repository and may result in loss of data if it's run on a repo that isn't owned by Origami.

You can do this by running the following command from a repo:

mkdir -p .github/workflows && curl https://raw.githubusercontent.com/Financial-Times/origami-labels/v1/example.yml --output .github/workflows/sync-repo-labels.yml

Labels

You can find the current labels in ./labels.js. Edit this file to make changes to Origami's suite of labels.

Current Labels

Label Description Color Example
blocked Work blocked by something else #CC0000 (crimson) label-blocked
breaking Will require a major version bump #990F3D (claret) label-breaking
bug Something isn't working #CC0000 (crimson) label-bug
accessibility An accessibility issue #000000 (black)
current Used to mark an issue as planned for Origami's current six-week cycle #FFB885 (mandarin 60% on white) label-current
next Used to mark an issue to discuss in Origami's next six-week planning session #FFCFAD (mandarin 40% on white) label-next
dependencies This is maintenance work relating to dependency bumps #FFEC1A (lemon) label-dependencies
discussion General discussion including support questions #FF7FAA (candy) label-discussion
documentation Improvements or additions to documentation #CCE6FF (sky) label-documentation
duplicate This issue or pull request already exists #CCC1B7 (black-20) label-duplicate
feature New feature request #00994D (jade) label-feature
good starter issue Good for newcomers #0D7680 (teal) label-good-starter-issue
help wanted We'd appreciate some help with this #96CC28 (wasabi) label-help-wanted
maintenance Technical tasks that might make things better #FFEC1A (lemon) label-maintenance
okr This issue or pull request helps us meet an OKR #0f5499 (oxford) label-okr
pattern A new pattern which impacts multiple components #ac92b3 (velvet 50% on paper) label-proposal
proposal A proposed change which requires approval or discussion #262a33 (slate) label-proposal
security This includes a security patch #CC0000 (crimson) label-security
wontfix This will not be worked on #CCC1B7 (black-20) label-wontfix

Origami-Type Labels

Origami-type labels will be automatically added to issues based on the Origami manifest contained within the repo. These map to the types defined in the Origami Manifest Spec.

Label Description Color Example
[origamiType] Relates to an Origami [origamiType] #593380 (velvet) label-service

Continuous Delivery Labels

These labels are used to automate releases.

Label Description Color Example
release:major Add to a PR to trigger a MAJOR version bump when merged #990F3D (claret) label-major
release:minor Add to a PR to trigger a MINOR version bump when merged #00994D (jade) label-minor
release:patch Add to a PR to trigger a PATCH version bump when merged #CC0000 (crimson) label-patch

Changing a label name

When you want to change a label's name, it's very important to add the old label name to the list of aliases for that label. This will ensure that the label is renamed rather than being removed then created. Failing to do this will result in loss of data.

  1. Copy the value of the name property and add a new entry in that label's aliases array
  2. Change the name property of the label to your new value

Changing a label description

Change the description property for the label you wish to update.

Changing a label colour

Add the new color value to the colors object. Change the color property for the label you wish to update.

Development

Work should be based on the master branch, with changes PRed in.

If your changes are not breaking, merge them into the v1 branch, and they'll be picked up by every repo running v1 automatically.

If your changes ARE breaking, then you should create a v2 branch based on master and update your chosen repo to use the new workflow.

About

GitHub action to sync a repo's issue labels with the standard Origami set

Resources

Stars

Watchers

Forks

Packages

No packages published