diff --git a/.github/workflows/notify-on-review-wanted.yml b/.github/workflows/notify-on-review-wanted.yml new file mode 100644 index 00000000000000..5ea3a814ac4952 --- /dev/null +++ b/.github/workflows/notify-on-review-wanted.yml @@ -0,0 +1,40 @@ +name: Notify on Review Wanted +on: + issues: + types: [labeled] + pull_request_target: + types: [labeled] + +permissions: + contents: read + +jobs: + notifyOnReviewWanted: + name: Notify on Review Wanted + if: github.repository == 'nodejs/node' && github.event.label == 'review wanted' + runs-on: ubuntu-latest + steps: + - name: Determine PR or Issue + id: define-message + run: | + if [[ -n "${{ github.event.pull_request.number }}" ]]; then + number="${{ github.event.pull_request.number }}" + link="https://github.com/${{ github.repository }}/pull/$number" + echo "message=The PR (#$number) requires review from Node.js maintainers. See: $link" >> "$GITHUB_OUTPUT" + echo "title=${{ github.actor }} asks for attention on pull request #$number" >> "$GITHUB_OUTPUT" + else + number="${{ github.event.issue.number }}" + link="https://github.com/${{ github.repository }}/issues/$number" + echo "message=The issue (#$number) requires review from Node.js maintainers. See: $link" >> "$GITHUB_OUTPUT" + echo "title=${{ github.actor }} asks for attention on issue #$number" >> "$GITHUB_OUTPUT" + fi + + - name: Slack Notification + uses: rtCamp/action-slack-notify@4e5fb42d249be6a45a298f3c9543b111b02f7907 # 2.3.0 + env: + SLACK_COLOR: '#DE512A' + SLACK_ICON: https://github.com/nodejs.png?size=48 + SLACK_TITLE: ${{ steps.define-message.outputs.title }} + SLACK_MESSAGE: ${{ steps.define-message.outputs.message }} + SLACK_USERNAME: nodejs-bot + SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}