diff --git a/.github/workflows/notify-on-push.yml b/.github/workflows/notify-on-push.yml index 4315dccfd2d54b..e61b7652a51191 100644 --- a/.github/workflows/notify-on-push.yml +++ b/.github/workflows/notify-on-push.yml @@ -27,36 +27,20 @@ jobs: SLACK_USERNAME: nodejs-bot SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} - notifyOnMissingMetadata: - name: Notify on Push on `main` that lacks metadata + validateCommitMessage: + name: Notify on Push on `main` with invalid message if: github.repository == 'nodejs/node' runs-on: ubuntu-latest - permissions: - contents: read - pull-requests: write steps: - uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false - name: Check commit message - run: npx -q core-validate-commit ${{ github.event.after }} || echo "INVALID_COMMIT_MESSAGE=1" >> $GITHUB_ENV - - name: Retrieve PR number if possible - if: env.INVALID_COMMIT_MESSAGE - run: | - COMMIT_TITLE=$(git --no-pager log --oneline -1 --no-color) node <<'EOF' >> $GITHUB_ENV || true - const invalidCommitMessageMatch = /\s\(\#(\d+)\)$/.exec(process.env.COMMIT_TITLE); - if (invalidCommitMessageMatch == null) process.exit(1) - console.log(`PR_ID=${invalidCommitMessageMatch[1]}`) - EOF - - name: Comment on the Pull Request - if: ${{ env.PR_ID }} - run: | - gh pr comment ${{ env.PR_ID }} --repo "${{ github.repository }}" \ - --body "A commit referencing this Pull Request was pushed to `${{ github.ref_name }}` by @${{ github.actor }} with an invalid commit message." + run: npx -q core-validate-commit "$COMMIT" env: - GH_TOKEN: ${{ github.token }} + COMMIT: ${{ github.event.after }} - name: Slack Notification - if: ${{ env.INVALID_COMMIT_MESSAGE }} + if: failure() uses: rtCamp/action-slack-notify@e31e87e03dd19038e411e38ae27cbad084a90661 # 2.3.3 env: SLACK_COLOR: '#DE512A'