@@ -8,8 +8,9 @@ readonly HEADER_PATTERN="^([^\(]+)\(([^\)]+)\): (.+)$"
8
8
readonly TYPE_PATTERN=" ^(feat|fix|docs|gen|lint|refactor|test|chore)$"
9
9
readonly SCOPE_PATTERN=" ^([a-z][a-z0-9]*)(-[a-z0-9]+)*$"
10
10
readonly SUBJECT_PATTERN=" ^([a-z0-9].*[^ ^\.])$"
11
- readonly JIRA_PATTERN=" ^([A-Z]{2,6}[0-9]{0,6}-[0-9]{1,6} ?)+$"
12
- readonly JIRA_HEADER_PATTERN=" ^.*([A-Z]{3,4}-[0-9]{1,6}).*$"
11
+ readonly JIRA_PATTERN=" [A-Z]{2,6}[0-9]{0,6}-[0-9]{1,6}"
12
+ readonly JIRA_FOOTER_PATTERN=" ^(${JIRA_PATTERN} ?)+$"
13
+ readonly JIRA_HEADER_PATTERN=" ^.*[^A-Z](${JIRA_PATTERN} ).*$"
13
14
readonly BROKE_PATTERN=" ^BROKEN:$"
14
15
readonly TRAILING_SPACE_PATTERN=" +$"
15
16
readonly REVERT_HEADER_PATTERN=" ^[R|r]evert[: ].*$"
@@ -77,7 +78,7 @@ validate_overall_structure() {
77
78
78
79
if [[ $LINE =~ $BROKE_PATTERN ]]; then
79
80
STATE=" $READING_FOOTER "
80
- elif [[ $LINE =~ $JIRA_PATTERN ]]; then
81
+ elif [[ $LINE =~ $JIRA_FOOTER_PATTERN ]]; then
81
82
STATE=" $READING_BROKEN "
82
83
GLOBAL_JIRA=${BASH_REMATCH[0]}
83
84
else
@@ -91,7 +92,7 @@ validate_overall_structure() {
91
92
exit $ERROR_STRUCTURE
92
93
fi
93
94
94
- if [[ $LINE =~ $JIRA_PATTERN ]]; then
95
+ if [[ $LINE =~ $JIRA_FOOTER_PATTERN ]]; then
95
96
echo -e " missing empty line before JIRA reference"
96
97
exit $ERROR_STRUCTURE
97
98
fi
0 commit comments