Config Sending Slack Notifications With Github Actions

- Đây là một bài viết về cấu hình gửi thông báo về ứng dụng slack, khi có pull request vào branch develop, staging, hay là production.

Dưới đây là tất cả các steps đơn giản:

1. Tạo một ứng dụng Slack từ https://api.slack.com/apps

Note : Hãy điền thông tin tên ứng dụng cảu bạn, và workspace của bạn.








- Chọn "Incoming webhooks"









Note : Ở tại Activate Incoming Webhooks hãy click "ON"









Note : Click vào button "Add New Webhook to Workspace"









Note : Chọn channel mà bạn muốn nhận thông báo từ github gửi về. Nếu channel bạn chưa tạo, thì hãy quay lại slack để tạo, rồi quay lại để chọn lại nhé.

Sau khi bạn click button "Allow", giao diện sẽ trả về cho bạn một webhook URL như hình bên dưới.






Note : Bạn copy link webhook này dán vào đoạn secret trong github dưới đây.

2. Login vào Github => Đến repo mà bạn muốn config.

Repo của bạn => Settings => Secrets and variables => Actions => Tab Secrets => New repository secret 









Note: Từ link webhook bạn copy ở step 1, sẽ paste vào đây.









Tại source code của bạn, bạn tạo folder .github/workflows/ này như sau









Và từ folder .github/workflows/ này, bạn tạo 1 file mới có tên " deployment-stg.yml " và paste đoạn code sau.

name: Docker Image Publish

on:
  pull_request:
    branches:
      - develop
env:
  PR_NUMBER: ${{ github.event.number }}
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Slack Notification Build and Pushlish Success
        if: ${{ success() }}
        uses: rtCamp/action-slack-notify@v2
        env:
          SLACK_TITLE: (SUCCESS) Build and Push Images
          SLACK_COLOR: good
          SLACK_MESSAGE: 'Push Docker image to Docker Hub success :rocket:'
          SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }} # name bạn config tại lúc new secret ở github

      - name: Slack Notification Build and Pushlish Failure
        if: ${{ failure() }}
        uses: rtCamp/action-slack-notify@v2
        env:
          SLACK_TITLE: (FAILURE) Build and Push Images
          SLACK_COLOR: danger
          SLACK_MESSAGE: 'Push Docker image to Docker Hub failure :skull:'
          SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }} # name bạn config tại lúc new secret ở github

Và test thôi nào.

Let's go...!

Bạn tạo 1 pull request để merge vào nhánh develop.

Đợi 1 lúc nó sẽ run đoạn code trên. Nó sẽ gửi về slack cho bạn nếu nội dung thành công sẽ như sau.






Github tham khảo : Link Github 

- Good luck ....! Thank you <3 ..

Previous Post Next Post