Skip to content

Auto create gitmoji labels

Actions
This action automatically creates gitmoji labels JIT
v0.2.2
Latest
Star (0)

gitmoji-auto-label

A simple action to automatically label PRs based on the gitmoji used in the title.

Note: GitHub requires more than just the gitmoji in the title, so this action will create the labels as <gitmoji>_gitmoji for example ✨_gitmoji or 🐛_gitmoji etc.

Usage

name: Create gitmoji label
on:
  pull_request:
    types: [opened, edited, reopened, synchronize]
jobs:
  create-gitmoji-label:
    runs-on: ubuntu-latest
    permissions:
      pull-requests: write
      contents: read
      repository-projects: read
    steps:
      - name: Enforce gitmoji PR title
        uses: georgepstaylor/[email protected]
        with:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Permissions

The token requires the pull-request: write (to add a label to a PR) and if you are running this in a github-organisation, repository-projects: read too. Please see the following reference for the latter: cli/cli#5307

Using the above example verbatim, you can use the job title gitmoji-pr-title as a required check.

Using this action to assist with GitHub automated release notes

Ensure you set this action job as a required check for your PRs, otherwise PRs could be merged without the correct labels

Optionally you can use this action in conjunction with georgepstaylor/gitmoji-release-action to automatically generate releases and release notes based on the gitmoji labels.

Likewise, you can create releases using the GitHub UI and the release notes will be generated based on the gitmoji labels if you use the following configuration:

See:

# .github/release.yml
changelog:
  exclude:
    labels:
      - ignore-for-release
    authors:
      - octocat
  categories:
    - title: Exciting New Features and Enhancements ✨
      labels:
        - ✨_gitmoji
        - ⚡_gitmoji
        - 🚀_gitmoji
        - 🎉_gitmoji
        - 🥚_gitmoji
    - title: Security Fixes 🔒
      labels:
        - 🔒_gitmoji
        - 🛡️_gitmoji
        - 🛂_gitmoji
        - 🔐_gitmoji
    - title: Bug Fixes 🐛
      labels:
        - 🐛_gitmoji
        - 🚑_gitmoji
        - 🩹_gitmoji
    - title: Documentation 📚
      labels:
        - 📚_gitmoji
        - 📝_gitmoji
        - 💡_gitmoji
        - 📄_gitmoji
    - title: Typo Corrections 📝
      labels:
        - 📝_gitmoji
        - 📚_gitmoji
    - title: Breaking Changes 💥
      labels:
        - 💥_gitmoji
    - title: Refactor ♻️
      labels:
        - ♻️_gitmoji
        - ⚰️_gitmoji
        - 🗑️_gitmoji
        - 🚚_gitmoji
    - title: Work In Progress 🚧
      labels:
        - 🚧_gitmoji
        - 🍺_gitmoji
        - 💩_gitmoji
    - title: Dependency Updates 📦
      labels:
        - ➕_gitmoji
        - ➖_gitmoji
        - 📌_gitmoji
        - ⬆️_gitmoji
        - ⬇️_gitmoji
    - title: Other Changes
      labels:
        - "*"

Auto create gitmoji labels is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.

About

This action automatically creates gitmoji labels JIT
v0.2.2
Latest

Auto create gitmoji labels is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.