github pr approve 슬랙 알림 설정

Tony·2023년 8월 12일
0

github

목록 보기
23/23

이슈

  • github과 slack을 slackbot으로 연동하는 경우 PR(Pull Request)에 대한 알림은 구독할 수 있지만 해당 PR에서 리뷰어가 approve한 경우 알림을 받을 수 없었다

해결

  • github workflows를 설정해서 approve시 알림을 받을 수 있다

1. Slack Webhook URL 생성

  • Slack 앱 설정에서 'Incoming Webhooks'을 검색하여 새로운 Webhook을 생성하고, 해당 채널을 선택하고 Webhook URL을 생성합니다.
  • Slack에서 원하는 채널에 대한 Incoming Webhook URL을 생성합니다.

2. GitHub Repository에 Secret 추가

  • 위 사진과 같이 해당 github 레포에서 Settings > Secrets and variables - Actions > New repository secret 을 클릭합니다
  • 1.에서 생성한 Webhook URL을 등록합니다

3. GitHub Actions 워크플로우 생성

  • .github/workflows 에서 아래와 같이 워크플로우를 등록합니다
name: Slack Notification

on:
  pull_request_review:
    types:
      - submitted

jobs:
  slack_notification:
    runs-on: ubuntu-latest
    steps:
      - name: Check out code
        uses: actions/checkout@v2

      - name: Notify on PR approval
        if: github.event.review.state == 'approved'
        env:
          SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
        run: |
          curl -X POST -H 'Content-type: application/json' --data '{
            "text": "Pull Request Approved: <!channel> PR: '${{ github.event.pull_request.title }}' by ${{
            github.event.pull_request.user.login }}\n${{ github.event.pull_request.html_url }}",
            "username": "GitHub Actions"
          }' $SLACK_WEBHOOK

참고

profile
움직이는 만큼 행복해진다

1개의 댓글

comment-user-thumbnail
2023년 8월 12일

훌륭한 글 감사드립니다.

답글 달기