summaryrefslogtreecommitdiffhomepage
path: root/.github/workflows/git-commit-message-style.yml
blob: 6de2ffed44a6986181dfa58b6f5fefe8c03387b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
---
name: Git - Check commit message style
on:
  push:
  workflow_dispatch:

jobs:
  check-commit-message-style:
    name: Check commit message style
    runs-on: ubuntu-latest
    steps:
      - name: Check for unicode whitespaces
        uses: gsactions/commit-message-checker@v2
        with:
          # Pattern matches strings not containing weird unicode whitespace/separator characters
          # \P{Z} = All non-whitespace characters (the u-flag is needed to enable \P{Z})
          # [ \t\n] = Allowed whitespace characters
          pattern: '^(\P{Z}|[ \t\n])+$'
          flags: 'u'
          error: 'Detected unicode whitespace character in commit message.'
          checkAllCommitMessages: 'true' # optional: this checks all commits associated with a pull request
          accessToken: ${{ secrets.GITHUB_TOKEN }} # only required if checkAllCommitMessages is true

      - name: Check against guidelines
        uses: mristin/opinionated-commit-message@v3.1.0
        with:
          # Commit messages are allowed to be subject only, no body
          allow-one-liners: 'true'
          # This action defaults to 50 char subjects, but 72 is fine.
          max-subject-line-length: '72'
          # The action's wordlist is a bit short. Add more accepted verbs
          additional-verbs: 'restart, coalesce'