Files
super-app/.github/workflows/pr_review.yml
2024-03-27 23:17:04 +05:30

42 lines
1.4 KiB
YAML

name: Label Triggered Workflow
on:
pull_request:
types:
- labeled
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
label_triggered_job:
runs-on: [ default ]
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="<!here> 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