くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

GitHub Actionsでデプロイの成功/失敗をSlackに通知する

GitHub Actions、便利で最近自動でプロイするのに使ってるけど、
失敗時のみメール通知なので、デプロイ成功したかを見にいかないといけない。。

Slackでうまくできないかなと思ってたら、便利なライブラリがあるらしい。
rtCamp/action-slack-notify: GitHub Action for sending a notification to a Slack channel

使い方

.yamlファイルはこんな感じ。

name: Slack Notification Samle
"on": push

env:
  # 環境変数にWebhookのURLを設定
  SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}

jobs:
  build_and_deploy_prod:
    runs-on: ubuntu-latest
    steps:
      - name: Slack Notification on Success
        # 成功時のみ実行
        if: success()
        uses: rtCamp/action-slack-notify@v2.0.2
        env:
          SLACK_CHANNEL: general
          SLACK_TITLE: Success Deply
          SLACK_COLOR: good
          SLACK_MESSAGE: 成功したよ

      - name: Slack Notification on Failure
        uses: rtCamp/action-slack-notify@v2.0.2
        # 失敗時のみ実行
        if: failure()
        env:
          SLACK_CHANNEL: general
          SLACK_TITLE: Failure Deply
          SLACK_COLOR: danger
          SLACK_MESSAGE: 失敗したよ

あとは、シークレットのSLACK_WEBHOOK_URLに、
Incoming Webhookで取得したURLを設定すればOK。

表示内容の設定

envを設定することで表示を変更できる。

詳しくは、README.mdのEnvironment Variablesを参照。
こんな感じに対応しているらしい。

Screenshot_2019-03-26_at_5_56_05_PM

参考にしたサイト様