From b581f25cbcb76006d925c2e04bf54a784decf0dd Mon Sep 17 00:00:00 2001 From: Balrambhai Sharma Date: Sun, 17 Sep 2023 22:51:52 +0530 Subject: [PATCH] TP-00000 | Streamlined PR Reviews with Automated Slack Notifications (#7731) --- .github/workflows/pr_review.yml | 37 +++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 .github/workflows/pr_review.yml diff --git a/.github/workflows/pr_review.yml b/.github/workflows/pr_review.yml new file mode 100644 index 0000000000..3690e94848 --- /dev/null +++ b/.github/workflows/pr_review.yml @@ -0,0 +1,37 @@ +name: Label Triggered Workflow + +on: + pull_request: + types: + - labeled + +jobs: + label_triggered_job: + runs-on: self-hosted + steps: + - name: Check label and send Slack message + id: check_label_and_send_slack + run: | + if [ "${{ github.event.label.name }}" == "Ready For Review" ]; then + PR_URL="${{ github.event.pull_request.html_url }}" + PR_TITLE="${{ github.event.pull_request.title }}" + PR_BODY="${{ github.event.pull_request.body }}" + PR_AUTHOR="${{ github.event.pull_request.user.login }}" + + MESSAGE=" Please review this PR" + + # Define an array of attachments + ATTACHMENTS="[{ + \"title\": \"$PR_TITLE\", + \"text\": \"$PR_BODY\", + \"author_name\": \"$PR_AUTHOR\", + \"title_link\": \"$PR_URL\" + }]" + + JSON_PAYLOAD="{\"text\":\"$MESSAGE\",\"attachments\":$ATTACHMENTS}" + + # Send the message with the attachment + curl -X POST -H 'Content-type: application/json' --data "$JSON_PAYLOAD" "${{ secrets.SLACK_PR_STATUS_HOOK }}" + else + echo "Label is not Ready For Review. Skipping Slack notification." + fi