検索
連載

Redmine連携でチケットをチャットに通知&開発を楽しくするHubotスクリプト6選チャットボットでチーム開発効率化入門(2)(2/3 ページ)

GitHub社が開発しているbotフレームワークHubotを使ってチャットアプリ上でチーム開発をいかに効率化していくかを解説していきます。今回は、HubotとRedmineを連携してチケットをチャットに通知する方法と環境構築、開発を楽しくするHubotスクリプトを6つ紹介。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

データベースの設定

 以下のコマンドでデータベースの設定を行います。

$ vim /var/lib/redmine/config/database.yml
production:
  adapter: mysql2
  database: db_redmine
  host: localhost
  username: user_redmine
  password: redmine
  encoding: utf8

依存するGemのインストール

 以下のコマンドで依存するGemをインストールします。

$ cd /var/lib/redmine
$ sudo apt-get install -y imagemagick libmagickwand-dev
$ sudo gem install bundler --no-rdoc --no-ri
$ bundle install --without development test

シークレットトークンの作成、データベース初期化

 以下のコマンドでシークレットトークンの作成、データベース初期化を行います。

$ bundle exec rake generate_secret_token
$ bundle exec rake db:migrate RAILS_ENV=production

Passengerのインストール

 以下のコマンドでRailsのアプリケーションサーバー「Passenger」をインストールします。

$ sudo gem install passenger --no-rdoc --no-ri
$ sudo apt-get install -y libcurl4-openssl-dev apache2-threaded-dev libapr1-dev libaprutil1-dev
$ sudo passenger-install-apache2-module

 passenger-install-apache2-module実行後に以下のようなApache用の設定が表示されるので、「/etc/httpd/conf.d/passenger.conf」に記述します。

LoadModule passenger_module /var/lib/gems/2.1.0/gems/passenger-4.0.53/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
  PassengerRoot /var/lib/gems/2.1.0/gems/passenger-4.0.53
  PassengerDefaultRuby /usr/bin/ruby2.1
</IfModule>

 続いて下記コマンドを実行します。

$ sudo a2enconf passenger
$ sudo vim /etc/apache2/sites-enabled/000-default.conf
DocumentRoot /var/lib/redmine/public
<Directory /var/lib/redmine/public>
        Require all granted
</Directory>

 続いて下記コマンドでApacheを再起動します。

$ sudo service apache2 restart

 構築した環境にアクセスし、Redmineの初期画面が表示されれば完了です。管理者のユーザーパスワードは初期状態では共に「admin」となっています。ログインし、忘れずに変更しておいてください。

RedmineとHubotの連携

 ここからは、RedmineとHubotを連携させます。

 HubotにRedmineのチケットの更新情報を連携するには、HubotスクリプトとRedmineのプラグインをインストールする必要があります。「Slack」「HipChat」などを利用している場合はHubotを介さずに連携可能です。

hubot-redmine-notifierのインストール

 Hubotがインストールされているサーバーで以下のコマンドを実行し、「hubot-redmine-notifier」をインストールします。

$ cd myhubot
$ npm install --save hubot-redmine-notifier
$ vim external-scripts.json

 external-scripts.jsonに"hubot-redmine-notifier"を追加し、追加したスクリプトが読み込まれるようにしておきます。

["hubot-redmine-notifier"]

redmine_webhookのインストール

 Redmineがインストールされているサーバーで以下のコマンドを実行し、「redmine_webhook」プラグインをインストールします。

$ cd $RAILS_ROOT/plugins
$ git clone git://github.com/suer/redmine_webhook.git
$ bundle install --without development test
$ rake redmine:plugins:migrate RAILS_ENV=production

 インストール後Redmineを再起動し、WebHookのURLを設定します。設定するURLは「http://:/hubot/redmine-notify?room=」です。

 Kandanの場合は、チャンネルのタブのURLで「/#channels-1」と確認できるので、そのチャンネルの数字を「room=1」といった具合に設定します。

チケットの作成と通知確認

 正しく設定ができていれば、以下のようにチケットを作成すると、

 KandanにRedmineのチケット作成の通知が表示されます。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る