This is a Github Action that ensures that your PR title matches the Conventional Commits spec.
This is helpful when you're using semantic-release with the Conventional Commits preset. When using the Squash and merge
strategy, Github will suggest to use the PR title as the commit message. With this action you can validate that the PR title will lead to a correct commit message.
See Conventional Commits for sample titles.
Required Description of the status check if validation succeeds. Default "Title follows the specification."
.
Required Description of the status check if validation fails. Default "Title does not follow the specification."
.
Required Persistent status check context key. Default "conventional-pr-title"
.
Required Conventional changelog preset. Default "conventional-changelog-angular"
.
true
if the validation succeed. false
otherwise.
name: Check PR title
on:
pull_request:
types:
- opened
- reopened
- edited
- synchronize
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: aslafy-z/[email protected]
with:
success-state: Title follows the specification.
failure-state: Title does not follow the specification.
context-name: conventional-pr-title
preset: conventional-changelog-angular@latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Note: Avoid using
master
ref, prefer to pin the last release's SHA ref.
All thanks goes to amannn
's semantic-pull-request
action.