This action checks that the commit subject is compliant with the patch classifying rules of HAProxy contribution guidelines. Also it does minimal check for a meaningful message in the commit subject: no less than 20 characters and at least 3 words.
- Bug fix:
BUG/MEDIUM: fix set-var parsing bug in config-parser
- New minor feature:
MINOR: Add path-rewrite annotation
- Minor build update:
BUILD/MINOR: Add path-rewrite annotation
- Incorrect patch type
bug: fix set-var parsing bug in config-parser
- Short commit message
BUG/MEDIUM: fix set-var
- Unknown severity
BUG/MODERATE: fix set-var parsing bug in config-parser
None.
steps:
- name: check-commit
uses: docker://ghcr.io/haproxytech/commit-check:TAG
env:
API_TOKEN: ${{ secrets.GITHUB_TOKEN }}Check-commit works only on pull_request events by inspecting all commit messages in a Pull Request. It uses Github API pull requests API to fetch the commits so API_TOKEN env_variable is required.
If a configuration file (.check-commit.yml) is not available in the running directory, a built-in failsafe configuration identical to the one below is used.
---
HelpText: "Please refer to https://github.com/haproxy/haproxy/blob/master/CONTRIBUTING#L632"
PatchScopes:
HAProxy Standard Scope:
- MINOR
- MEDIUM
- MAJOR
- CRITICAL
PatchTypes:
HAProxy Standard Patch:
Values:
- BUG
- BUILD
- CLEANUP
- DOC
- LICENSE
- OPTIM
- RELEASE
- REORG
- TEST
- REVERT
Scope: HAProxy Standard Scope
HAProxy Standard Feature Commit:
Values:
- MINOR
- MEDIUM
- MAJOR
- CRITICAL
TagOrder:
- PatchTypes:
- HAProxy Standard Patch
- HAProxy Standard Feature CommitThe program accepts an optional parameter to specify the location (path) of the base of the git repository. This can be useful in certain cases where the checked-out repo is in a non-standard location within the CI environment, compared to the running path from which the check-commit binary is being invoked.
to check also spellcheck errors aspell was added. it can be configured with .aspell.yml
example
mode: subject
min_length: 3
ignore_files:
- go.mod
- go.sum
- '*test.go'
- 'gen/*'
allowed:
- aspell
- configmin_length is minimal word size that is checked (default: 3)
mode can be set as
subjectdefaultoption- only subject of commit message will be checked
commit- whole commit message will be checked
all- both commit message and all code committed
disabled- check is disabled