diff --git a/.github/workflows/CommitMessage.yml b/.github/workflows/CommitMessage.yml new file mode 100644 index 0000000000..1f9b96ac2c --- /dev/null +++ b/.github/workflows/CommitMessage.yml @@ -0,0 +1,35 @@ +name: Commit messages check +on: + pull_request: + +jobs: + gitlint: + name: Check commit messages + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Install dependencies + run: | + pip install --upgrade gitlint + - name: Lint git commit messages + shell: bash + run: | + gitlint --commits origin/$GITHUB_BASE_REF.. 2>&1 | tee check_results.log + - name: Propegate Error Summary + if: always() + shell: bash + run: | + cat check_results.log >> "$GITHUB_STEP_SUMMARY" + echo "check_results<<###LINT_DELIMITER###$(cat check_results.log)###LINT_DELIMITER###" >> "$GITHUB_ENV" + - name: Comment on PR + if: failure() + uses: marocchino/sticky-pull-request-comment@v2 + with: + header: Commit Comment + message: | + ``` + ${{ env.check_results }} + ``` \ No newline at end of file