Skip to content

Commit e7a8693

Browse files
committed
fix: commit message validation
Signed-off-by: matttrach <matt.trachier@suse.com>
1 parent 46ffb85 commit e7a8693

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

.github/workflows/validate.yaml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -87,25 +87,27 @@ jobs:
8787
# This format enables automatic generation of changelogs and versioning
8888
filter() {
8989
COMMIT="$1"
90-
output="$(echo "$COMMIT" | grep -e '^fix: ' -e '^feature: ' -e '^feat: ' -e 'refactor!: ' -e 'feature!: ' -e 'feat!: ' -e '^chore(main): ')"
90+
output="$(echo "$COMMIT" | grep -e '^fix: ' -e '^feature: ' -e '^feat: ' -e '^refactor!: ' -e '^feature!: ' -e '^feat!: ' -e '^chore(main): ')"
9191
echo "$output"
9292
}
9393
prefix_check() {
9494
message="$1"
95-
if [ "" != "$(filter "$message")" ]; then
96-
echo "...Commit message does not start with the required prefix.
95+
if [ -z "$(filter "$message")" ]; then
96+
cat <<-EOT
97+
...Commit message does not start with the required prefix.
9798
Please use one of the following prefixes: fix:, feature:, feat:, refactor!:, feature!:, feat:!.
9899
'chore(main): ' is also allowed for release PRs.
99100
This enables release-please to automatically determine the type of release (major, minor, patch) based on the commit message.
100-
$message"
101+
$message
102+
EOT
101103
exit 1
102104
else
103105
echo "...Commit message starts with the required prefix."
104106
fi
105107
}
106108
empty_check() {
107109
message="$1"
108-
if [ "" == "$message" ]; then
110+
if [ -z "$message" ]; then
109111
echo "...Empty commit message."
110112
exit 1
111113
else
@@ -141,9 +143,9 @@ jobs:
141143
142144
while read -r message; do
143145
echo "checking message ^$message\$"
144-
prefix_check "$message"
145146
empty_check "$message"
146147
length_check "$message"
148+
prefix_check "$message"
147149
spell_check "$message"
148150
echo "message ^$message\$ passed all checks"
149151
done <<<"$COMMIT_MESSAGES"

0 commit comments

Comments
 (0)