Heroku+campfire+hubot

最近会社でもHubotを使う機会がありましたので、HubotをHerokuで使う場合の手順を書いておきたいと思います。

前提としてCampfireherokuへアカウントを登録しておく必要があります。campfireへは自分用とhubot用の二つのアカウントが必要です。
では、手順です。

1.hubotの入手


$ git clone git://github.com/github/hubot.git

2.heroku上にアプリの登録をする


$ cd hubot
$ heroku create myhubotapp [APP_NAME]
$ git init
$ git add .
$ git commit -m'first commit'
$ git push -u heroku master
$ heroku ps:scale web=1

3.herokuに環境変数を設定する


$ heroku config:add HUBOT_CAMPFIRE_TOKEN="..."
$ heroku config:add HUBOT_CAMPFIRE_ROOMS="123,456,789"
$ heroku config:add HUBOT_CAMPFIRE_ACCOUNT="thing"
$ heroku config:add HEROKU_URL=http://[APP_NAME].herokuapp.com

まず最初のHUBOT_CAMPFIRE_TOKENはhubot用アカウントでcampfireにログインしてユーザ情報の「My Info」をクリックして背にしたページに載っています。
次のHUBOT_CAMPFIRE_ROOMSはRoomのidになります。HUBOT_CAMPFIRE_ACCOUNTはRoomに入った時のURLのドメインになります。

例えば「https://testdev.campfirenow.com/room/1111」というURLの場合、

  • HUBOT_CAMPFIRE_ROOMS=1111
  • HUBOT_CAMPFIRE_ACCOUNT=testdev

となります。

4.herokuにディプロイしたアプリケーションにRedisToGoプラグインを追加


$ heroku addons:add redistogo:nano
$ heroku ps
$ heroku restart

5.ここで起動が正常に出来ていれば、campfireの指定したRoomに作成したHubot用アカウントが登場しているはずです。

試しに以下のコマンドを入力してみてください。


$ hubot help

ちゃんとhubotからの返答があれば問題ありません。