Skip to content

Commit

Permalink
feat: update commit_message.yml
Browse files Browse the repository at this point in the history
feat: update commit_message.yml

feat: #3232
  • Loading branch information
emanuelaepure10 committed Mar 6, 2024
1 parent 1d73b1e commit d7789f9
Show file tree
Hide file tree
Showing 4 changed files with 86 additions and 73 deletions.
18 changes: 18 additions & 0 deletions .github/workflows/action-conventional-commits.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Action Conventional Commits

on:
push:
branches:
- main

jobs:
build:
name: Conventional Commits
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- uses: webiny/[email protected]
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Optional, for private repositories.
allowed-commit-types: "feat,fix" # Optional, set if you want a subset of commit types to be allowed.
37 changes: 0 additions & 37 deletions .github/workflows/check.yml

This file was deleted.

60 changes: 24 additions & 36 deletions .github/workflows/commit_message.yml
Original file line number Diff line number Diff line change
@@ -1,44 +1,32 @@
name: 'Commit Message Check'
name: Check Commit Message

on:
pull_request:
types:
- opened
- edited
- reopened
- synchronize
pull_request_target:
types:
- opened
- edited
- reopened
- synchronize
push:
branches:
- main
- 'releases/*'

jobs:
check-commit-message:
name: Check Commit Message
check_commit_message:
runs-on: ubuntu-latest

steps:
- name: Check Commit Type
uses: gsactions/commit-message-checker@v1
with:
pattern: '\[[^]]+\] .+$'
flags: 'gm'
error: 'Your first line has to contain a commit type like "[BUGFIX]".'
- name: Check Line Length
uses: gsactions/commit-message-checker@v1
with:
pattern: '^[^#].{74}'
error: 'The maximum line length of 74 characters is exceeded.'
excludeDescription: 'true' # optional: this excludes the description body of a pull request
excludeTitle: 'true' # optional: this excludes the title of a pull request
checkAllCommitMessages: 'true' # optional: this checks all commits associated with a pull request
accessToken: ${{ secrets.GITHUB_TOKEN }} # github access token is only required if checkAllCommitMessages is true
- name: Check for Resolves / Fixes
uses: gsactions/commit-message-checker@v1
with:
pattern: '^.+(Resolves|Fixes): \#[0-9]+$'
error: 'You need at least one "Resolves|Fixes: #<issue number>" line.'
- name: Checkout code
uses: actions/checkout@v2

- name: Check commit message
run: |
COMMIT_MSG=$(git log --format=%B -n 1 ${{ github.sha }})
PATTERN_MSG='^(feat|fix|docs|style|refactor|perf|test|chore)(\(.+\))?: .{1,100}$'
if [[ ! $COMMIT_MSG =~ $PATTERN_MSG ]]; then
echo "Invalid commit message format. Must match pattern: /^(feat|fix|docs|style|refactor|perf|test|chore)(\(.+\))?: .{1,100}$/"
exit 1
fi
- name: Check commit description
run: |
COMMIT_DESC=$(git log --format=%b -n 1 ${{ github.sha }})
PATTERN_DESC='^.{1,200}$'
if [[ ! $COMMIT_DESC =~ $PATTERN_DESC ]]; then
echo "Invalid commit description format. Must be up to 200 characters long."
exit 1
fi
44 changes: 44 additions & 0 deletions .github/workflows/gs-commit-message-checker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: 'GS Commit Message Checker'
on:
pull_request:
types:
- opened
- edited
- reopened
- synchronize
pull_request_target:
types:
- opened
- edited
- reopened
- synchronize
push:
branches:
- main
- 'releases/*'

jobs:
check-commit-message:
name: Check Commit Message
runs-on: ubuntu-latest
steps:
- name: Check Commit Type
uses: gsactions/commit-message-checker@v1
with:
pattern: '^.+(feat|fix|docs|style|refactor|perf|test|chore): .+$'
flags: 'gm'
error: 'Your first line has to contain a commit type like "feat: your_title".'
- name: Check Line Length
uses: gsactions/commit-message-checker@v1
with:
pattern: '^[^#].{74}'
error: 'The maximum line length of 74 characters is exceeded.'
excludeDescription: 'true' # optional: this excludes the description body of a pull request
excludeTitle: 'true' # optional: this excludes the title of a pull request
checkAllCommitMessages: 'true' # optional: this checks all commits associated with a pull request
accessToken: ${{ secrets.GITHUB_TOKEN }} # github access token is only required if checkAllCommitMessages is true
- name: Check for Resolves / Fixes
uses: gsactions/commit-message-checker@v1
with:
pattern: '^.+(feat|fix|docs|style|refactor|perf|test|chore): \#[0-9]+$'
error: 'You need at least one "feat|fix|docs|style|refactor|perf|test|chore: #<issue number>" line.'

0 comments on commit d7789f9

Please sign in to comment.