Files
ionic-framework/.github/workflows/conventional-commit.yml
Brandy Smith 498f7c7ab2 chore(ci): update PR title check to exclude chore and release titles (#30528)
Updates our PR title check to ignore titles with `chore` or `release` in
them, eliminating the need for a `release` label on release PRs &
allowing us to write commits like `chore: update dependency`.

I also specified which commit types are allowed and included `chore` and
`release` here even though they are skipped in case we ever remove the
if skipping them.

Co-authored-by: Brandy Smith <6577830+brandyscarney@users.noreply.github.com>
2025-07-08 19:30:52 +00:00

44 lines
1.5 KiB
YAML

name: PR Conventional Commit Validation
on:
pull_request:
types: [opened, synchronize, reopened, edited]
jobs:
validate-pr-title:
runs-on: ubuntu-latest
steps:
- name: Validate PR title
if: |
!contains(github.event.pull_request.title, 'release') &&
!contains(github.event.pull_request.title, 'chore')
uses: amannn/action-semantic-pull-request@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
# Configure that a scope must always be provided.
requireScope: true
# Configure allowed commit types
types: |
feat
fix
docs
style
refactor
perf
test
build
ci
revert
release
chore
# Configure additional validation for the subject based on a regex.
# This example ensures the subject doesn't start with an uppercase character.
subjectPattern: ^(?![A-Z]).+$
# If `subjectPattern` is configured, you can use this property to
# override the default error message that is shown when the pattern
# doesn't match. The variables `subject` and `title` can be used
# within the message.
subjectPatternError: |
The subject "{subject}" found in the pull request title "{title}" didn't match the configured pattern. Please ensure that the subject doesn't start with an uppercase character.