検証環境
- Windows 10
- Jenkins 2.249.1
- Slack 4.9.0
- Slack Notification 2.42
連携方法
Slack に Jenkins インテグレーションを追加
https://my.slack.com/services/new/jenkins-ci
上記のページにアクセスして
Jenkins から通知を受け取るチャンネルを選択して
「Jenkins CI インテグレーションの追加」を押します
- ここで選択したチャンネルが Jenkins から通知を受け取る
デフォルトのチャンネルになります- Jenkins 側でチャンネルの指定を省略した時は
ここで選択したチャンネルが Jenkins からの通知を受け取ります - デフォルトのチャンネルは後で変更可能です
- Jenkins 側でチャンネルの指定を省略した時は
そして、ページが切り替わったら「Step 3」に表示されている
「インテグレーション用トークン認証情報ID」をメモしておきます
- 後で Jenkins の設定画面で使用します
これで Slack 側の準備は完了です
Jenkins に Slack Notification プラグインをインストール
Jenkins で「Jenkinsの管理」を選択して
「プラグインの管理」を選択して
プラグインマネージャーのページが表示されたら「利用可能」タブを選択して
検索欄に「slack notification」と入力して表示された「Slack Notification」をチェックして
「再起動せずにインストール」を押します
ページが切り替わってインストールが完了したら
Jenkins に Slack Notification プラグインをインストールする作業は完了です
Jenkins に Slack の認証情報を追加
Jenkins で「Jenkinsの管理」を選択して
「Manage Credentials」を選択して
「(global)」を選択して
「認証情報の追加」を押します
そして、認証情報を設定するページが表示されたら
項目 | 内容 |
---|---|
種類 | Secret text |
スコープ | グローバル |
Secret | 先ほどメモした「インテグレーション用トークン認証情報ID」を入力 |
ID | 認証情報の名前(ここでは「slack-token」とします) |
上記のように項目を設定して「保存」を押します
これで認証情報の追加が完了です
Jenkins 側で Slack との連携を設定
Jenkins で「Jenkinsの管理」を選択して
「システムの設定」を押します
そして、「Slack」の欄の項目を
項目 | 内容 |
---|---|
Workspace | Slack のワークスペースの名前 |
Credential | 先ほど作成した認証情報を選択 |
Default channel / member id | 通知を受け取るデフォルトのチャンネルやメンバーのID(省略可) |
上記のように項目を設定して「保存」を押します
これで Jenkins 側に Slack との連携を設定できました
Jenkins のジョブで Slack に通知を投げるように設定
Slack に通知を投げたい Jenkins のジョブの設定画面を開いて
「ビルド後の処理の追加 > Slack Notidfications」を選択します
そして、Slack に通知を投げたいビルドのタイミングにチェックを入れて
ジョブの設定を保存します
これで、そのジョブをビルドすると指定したタイミングで
Slack に通知が投げられるようになります