auto-labeler workflow (gofiber/fiber)
The auto-labeler workflow from gofiber/fiber, explained and optimized by Latchkey.
CI health: B - good
Run this on Latchkey for self-healing, caching, and up to 58% lower cost.
Grade your own workflow free or run it on Latchkey →What it does
This is the auto-labeler workflow from the gofiber/fiber repository, a real project running GitHub Actions. It is shown here with attribution under its MIT license.
Below, Latchkey shows a faster, safer version produced by its optimization engine.
The workflow
name: auto-labeler
on:
issues:
types: [opened, edited, milestoned]
pull_request_target:
types: [opened, edited, reopened, synchronize]
workflow_dispatch:
permissions:
contents: read
pull-requests: write
issues: write
jobs:
auto-labeler:
uses: gofiber/.github/.github/workflows/auto-labeler.yml@main
secrets:
github-token: ${{ secrets.ISSUE_PR_TOKEN }}
with:
config-path: .github/labeler.yml
config-repository: gofiber/fiber
The same workflow, on Latchkey
Removes redundant runs and caps runaway jobs. Added and changed lines are highlighted.
name: auto-labeler on: issues: types: [opened, edited, milestoned] pull_request_target: types: [opened, edited, reopened, synchronize] workflow_dispatch: permissions: contents: read pull-requests: write issues: write jobs: auto-labeler: timeout-minutes: 30 uses: gofiber/.github/.github/workflows/auto-labeler.yml@main secrets: github-token: ${{ secrets.ISSUE_PR_TOKEN }} with: config-path: .github/labeler.yml config-repository: gofiber/fiber
What changed
- Add a job timeout so a hung step cannot burn hours of runner time.
1 third-party action is referenced by a movable tag. Pin it to the commit SHA (Latchkey resolves and applies this automatically) so a repointed tag cannot change what runs.
This workflow runs 1 job per trigger. On Latchkey the same minutes cost up to 58% less than GitHub-hosted, with zero queue time.