こんにちは、管理部兼エンジニアのtetsuです。
今回は話題の「Slack」と「Redmine」を連携し、Redmineに登録されているチケットが更新された場合、Slackに通知する方法を紹介します。
Slackとは?
チーム用のコミュニケーションツールです。
HipChatやYammer、Skypeよりも使いやすいため、海外で人気を集めています。
参考:Slack
「Slack chat plugin for Redmine」のインストール
Redmineに「Slack chat plugin for Redmine」プラグインをインストールします。
※ここではRedmineのバージョン「2.x」で解説していきます
Redmineをインストールしたサーバで、Redmineインストール先ディレクトリ内にある以下のディレクトリに、プラグインをダウンロードします。
- インストール先ディレクトリ
- ダウンロードコマンド
#{RAILS_ROOT}/plugins
git clone https://github.com/sciyoshi/redmine-slack.git redmine_slack
ダウンロード完了後、以下のコマンドを実行し、プラグイン用データベースのアップデートを行います。
rake redmine:plugins:migrate RAILS_ENV=production
データベースのアップデート後、Redmineを再起動すればインストール完了です。
「Slack API URL」を取得
続いて、RedmineからSlackへの通知用API情報を作成します。
「Slack」から「Configure Integrations」メニューへ移動してください。
続いて、最下部の「DIY Integrations & Customizations」にある「Incoming WebHooks」をクリックします。
最後に、通知先となるチャンネルを指定し、「Add Incoming Webhook」をクリックして登録します。
登録が完了すると、次の画面が表示されます。
表示された「Your Unique Webhook URL」が「Slack API URL」となり、後述の設定で利用しますので控えておいてください。
「Slack chat plugin for Redmine」の初期設定
プラグインをインストールしたら、初期設定が必要になります。
Redmineの「管理」メニューにある「プラグイン」から「Redmine Slack」にある「設定」をクリックします。
設定項目が表示されるので、それぞれ入力をしていきます。
- Slack API URL
- Slack Channel
- Slack Icon
- Slack Username
前述で取得した「Your Unique Webhook URL」のURLを入力します。
基本的に未入力であれば、「Slack API URL」で作成したチャンネルへ通知されます。
プロジェクト毎に通知先のチャンネルを変更したい場合、Redmineのプロジェクト毎に「Slack Channel」の名前でカスタムフィールドを追加し、チャンネル名をプロジェクト毎に設定します。
設定の際には「#」も含めたチャンネル名を入力してください。
指定のアイコンがあれば入力します。
Slackに通知された際に表示される名前を入力します。
以上で、設定が完了となります。
実際にRedmineでチケットを登録または更新すると、「Slack」には次のように通知されます。
まとめ
さまざまなツールが出てきて便利な昨今ですが、お互いにこのような連携ができることで、開発手法やコミニケーションが円滑になり、ますます便利になっています。
皆様もぜひお試しあれ!!