ssafy-pjt-naem / naem-back

2 stars 0 forks source link

토론 이슈가 열리면 mattermost로 알림이 가도록 설정하면 좋을 것 같아요! #26

Open minju412 opened 6 months ago

minju412 commented 6 months ago

📝 Describe

현재 몇 개의 이슈가 올라왔음에도 인지하지 못하고 있었네요..!

이처럼 누락되는 상황을 방지하고 더 빠른 소통을 위해, suggestion label이 달린 이슈가 있을 때, mattermost로 알림이 가도록 설정했습니다!

1. Github Actions 워크플로우 설정

1) GitHub 레포지토리에서 .github/workflows 디렉토리 하위에 issue-notification.yml과 같은 이름의 YAML 파일을 생성한다. 2) 아래와 같이 GitHub Actions 워크플로우를 설정합니다.

name: GitHub Issue Notification

on:
  issues:
    types: [labeled]

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

      - name: Send notification to MatterMost
        id : send-to-mattermost
        if: github.event.label.name == '🙋‍♂️ suggestion'
        env:
          MATTERMOST_WEBHOOK_URL: ${{ secrets.MATTERMOST_WEBHOOK_URL }}
        run: |
          ISSUE_TITLE=$(curl -sS "${{ github.event.issue.url }}" | jq -r '.title')
          MESSAGE="🙋‍♂️ 새로운 이슈가 열렸어욥!!: $ISSUE_TITLE\n${{ github.event.issue.html_url }}"
          curl -X POST -H "Content-type: application/json" --data "{\"text\":\"$MESSAGE\"}" $MATTERMOST_WEBHOOK_URL

위에서는 suggestion label이 달린 이슈가 생성되었을 때 알림이 오도록 했습니다.

🔍 다양한 event trigger와 types를 확인하고 싶다면? 공식 문서

2. MatterMost Incomming Webhooks 설정

1) MatterMost > Channels > 통합 선택 image

2) 전체 Incomming Webhook 선택 image

3) Incomming Webhook 추가하기 선택 image

이제 생성된 URL을 Github Secrets에 등록하면 됩니다!

3. GitHub Secrets 설정

1) GitHub 저장소의 Settings > Secrets and variables > Actions 섹션으로 이동하여 New Repository Secret을 클릭한다.

2) Name은 MATTERMOST_WEBHOOK_URL로 설정하고, Secret에는 직전에 생성한 URL을 복사/붙여넣는다. image

🎉 완료

이제 새로운 이슈가 등록되었을 때 MM으로 알림을 받아볼 수 있습니다! image

✅ Tasks

github action을 이용해 issue-notification 생성하기

🙋🏻 More

하나, 둘, 셋 화이팅

hookim commented 6 months ago

어떻게 메세지 알림 연동했는지 궁금했는데 굉장히 유용하네요.

chwangmin commented 6 months ago

토론 이슈가 생길 때마다 이메일로 확인을 했는데, 자주 사용하는 메신저로 바로 이슈 제목까지 확인 할 수 있어서 좋네요~! 그리고 궁금한게 있는데, 이슈 추가 -> github action -> webhook -> mattermost로 가는 흐름이 맞을까요? 맞으면 체크 이모지 부탁드려요~

bjho606 commented 6 months ago

신기하네요!