Skip to content

[Feat] ์ผ์ •ํ™”๋ฉด Compose ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ #39

[Feat] ์ผ์ •ํ™”๋ฉด Compose ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜

[Feat] ์ผ์ •ํ™”๋ฉด Compose ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ #39

name: Slack Notification (Submitted)
on:
pull_request_review:
types: [submitted]
permissions: {}
concurrency:
group: pr-${{ github.event.pull_request.number }}-slack-submitted
cancel-in-progress: true
# ๋ฆฌ๋ทฐ ์™„๋ฃŒ ์•Œ๋ฆผ
jobs:
notify:
runs-on: ubuntu-latest
steps:
- name: Notify Review Submitted
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
PR_TITLE: ${{ github.event.pull_request.title }}
PR_NUMBER: ${{ github.event.pull_request.number }}
PR_URL: ${{ github.event.pull_request.html_url }}
REVIEW_STATE: ${{ github.event.review.state }}
PR_REVIEWER: ${{ github.event.review.user.login }}
PR_AUTHOR: ${{ github.event.pull_request.user.login }}
run: |
if [[ "$REVIEW_STATE" == "commented" ]]; then
echo "๋‹จ์ˆœ ์ฝ”๋ฉ˜ํŠธ ๋ฆฌ๋ทฐ๋Š” ์•Œ๋ฆผ ์ƒ๋žต"
exit 0
fi
declare -A GITHUB_TO_SLACK
GITHUB_TO_SLACK["soeun2537"]="U09A0LM0CRW"
GITHUB_TO_SLACK["taek2222"]="U099ARRH3D3"
GITHUB_TO_SLACK["changuii"]="U099BR9RNE6"
GITHUB_TO_SLACK["eoehd1ek"]="U0995NANDML"
GITHUB_TO_SLACK["oungsi2000"]="U098U2R57NK"
GITHUB_TO_SLACK["parkjiminnnn"]="U098U8SLXHD"
GITHUB_TO_SLACK["etama123"]="U0995MPSZ62"
SLACK_REVIEWER_ID=${GITHUB_TO_SLACK[$PR_REVIEWER]:-$PR_REVIEWER}
SLACK_AUTHOR_ID=${GITHUB_TO_SLACK[$PR_AUTHOR]:-$PR_AUTHOR}
SLACK_AUTHOR_MENTION="<@$SLACK_AUTHOR_ID>"
if [[ "$PR_REVIEWER" == *"[bot]" ]]; then
echo "Bot ๊ณ„์ • ๋ฆฌ๋ทฐ ์š”์ฒญ์€ ์•Œ๋ฆผ ์ƒ๋žต"
exit 0
fi
ICON=""
case "$REVIEW_STATE" in
approved) ICON="โœ…" ;;
changes_requested) ICON="๐Ÿ”ด" ;;
esac
curl -X POST -H 'Content-type: application/json' \
--data "{\"text\": \"${ICON} *๋ฆฌ๋ทฐ ์™„๋ฃŒ ์•Œ๋ฆผ*\n*PR ์ œ๋ชฉ:* ${PR_TITLE} (#${PR_NUMBER})\n*์ž‘์„ฑ์ž:* ${SLACK_AUTHOR_MENTION}\n*์ƒํƒœ:* ${REVIEW_STATE}\n*๋งํฌ:* ${PR_URL}\"}" \
$SLACK_WEBHOOK_URL