DBZ-8479 Improve DDL parsing logic #465
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Commit message format check | |
on: | |
# ATTENTION: See https://securitylab.github.com/research/github-actions-preventing-pwn-requests/ | |
# re security implications of using this trigger; in particular, no code from PR branches must | |
# be executed in any flows triggered by it | |
pull_request_target: | |
branches: | |
- main | |
- 1.* | |
- 2.* | |
jobs: | |
build: | |
name: Commit message | |
runs-on: ubuntu-latest | |
steps: | |
- name: Commit messages in format DBZ-xxx | |
id: check | |
env: | |
pull_request_number: ${{ github.event.pull_request.number }} | |
github_repository: ${{ github.repository }} | |
run: | | |
COMMIT_MSGS=$(curl --silent -X "GET" https://api.github.com/repos/$github_repository/pulls/$pull_request_number/commits | jq '.[] | {message: .commit.message}' | jq '.message' | cut -c 2-) | |
NON_PREFIX_COMMITS="" | |
while IFS= read -r line ; | |
do | |
line=${line%\"} | |
echo "-> checking: $line" | |
if [[ ! $line =~ (^DBZ-[[:digit:]]+)|(\[release\])|(\[jenkins-jobs\])|(\[docs\])|(\[maven-release-plugin\])|(\[ci\]) ]]; then | |
NON_PREFIX_COMMITS="${NON_PREFIX_COMMITS} -> ${line} \n" | |
fi | |
done <<< "$COMMIT_MSGS" | |
if [[ $NON_PREFIX_COMMITS != "" ]]; then | |
echo "========================================================================" | |
echo " COMMIT MESSAGES WITH MISSING \"DBZ\" PREFIX" | |
echo "========================================================================" | |
echo -e "$NON_PREFIX_COMMITS" | |
echo "PREFIX_COMMITS=false" >> $GITHUB_OUTPUT | |
fi | |
- name: Create Comment | |
if: ${{ steps.check.outputs.PREFIX_COMMITS == 'false' }} | |
uses: peter-evans/create-or-update-comment@v4 | |
with: | |
issue-number: ${{ github.event.pull_request.number }} | |
body: | | |
Hi @${{ github.event.pull_request.user.login }}, thanks for your contribution. Please prefix the commit message(s) with the [DBZ-xxx JIRA issue key](https://github.com/debezium/debezium/blob/main/CONTRIBUTE.md#making-changes). | |
- name: Check failure | |
if: ${{ steps.check.outputs.PREFIX_COMMITS == 'false' }} | |
uses: actions/github-script@v7 | |
continue-on-error: false | |
with: | |
script: | | |
throw new Error('Commit has no DBZ-xxx prefiix') |