Centralized configurations and reusable GitHub Actions workflows for the gofiber organization.
Each workflow can be consumed from other repositories with:
jobs:
example:
uses: gofiber/.github/.github/workflows/<workflow-file>@main
# with: ...
# secrets: ...Runs golangci-lint with the same defaults as the gofiber repositories.
- Inputs:
go-version(default1.25.x),working-directory(default.),golangci-version(defaultv2.5.0),config-path(default.github/.golangci.yml),config-repository(defaultgofiber/.github),config-ref(defaultmain),use-shared-config(defaulttrue).
Runs gotestsum across the Go/test matrix used in gofiber/fiber by default.
- Inputs:
go-versionsJSON array (default["1.25.x"]),platformsJSON array (default["ubuntu-latest", "windows-latest", "macos-latest"]),working-directory(default.),package-pattern(default./...),codecov-flags(defaultunittests),codecov-slug(default${{ github.repository }}),enable-codecov(defaulttrue),enable-repeated(defaulttrue). - Secrets: optional
codecov-tokenwhen publishing coverage.
Runs markdownlint-cli2 against Markdown files.
- Inputs:
globs(newline-separated list) and optionalconfigpath. Defaults match the organization markdown workflow.
Runs Release Drafter with a configurable config path fetched from this repo by default.
- Inputs:
config-path(default.github/release-drafter.yml),config-repository(defaultgofiber/.github),config-ref(defaultmain). - Secrets: optional
release-tokenwithcontents:writepermission; otherwise uses the default token.
Applies labels from the shared configuration in this repository using the gofiber/multi-labeler action. The base configuration captures labels common to gofiber/contrib and gofiber/fiber; repository-specific rules (for example, versioned branches in gofiber/fiber) should be added via a repo-local labeler.yml that extends this shared file.
- Inputs:
config-path(default.github/labeler.yml),config-repository(defaultgofiber/.github),config-ref(defaultmain). - Secrets: optional
github-tokenwithpull_requests:writeandissues:write; otherwise uses the default token.
Automatically enables auto-merge on Dependabot pull requests.
- Secrets: optional
github-tokenwithpull_requests:writeandcontents:writepermissions. - Only runs when the actor is
dependabot[bot].
Runs Go security checks.
- Inputs:
run-govulncheck(defaulttrue),run-codeql(defaultfalse),working-directory(default.),go-version(defaultstable). - CodeQL publishes results to code scanning when enabled.
Pushes documentation (or any directory) from the caller repository to another repository.
- Inputs:
source-path,destination-repo, optionaldestination-branch,destination-path,commit-message,git-user-name,git-user-email. - Secrets:
destination-tokenwith push access to the destination repository.
This repository also stores configuration that should remain identical across gofiber projects:
.github/release-drafter.yml: Release Drafter template and categories used by therelease-drafterworkflow..github/labeler.yml: Label mappings used by theauto-labelerworkflow..github/.golangci.yml: golangci-lint rules used by thego-lintworkflow.
When consuming the corresponding workflows, the shared configuration is automatically fetched from this repository unless you override the inputs.