naichi's lab

3日後の自分(他人)への書き置き

hubotメモ

今更ながらhubot触ってみる。

下記記事を参考にしながら進める。 Hubot / ChatOps とは - Qiita

ただのメモ書き

メモ

nodejsのインストール

  • macだとnodebrewってのが主流?
    • nodebrewで入れた

新規でhubotを作成

yo hubot

新規でhubotスクリプトを作る

$ mkdir hubot-hoge
$ cd hubot-hoge
$ yo hubot:script

あとは質問に答えるだけ。

スクリプトをローカルで確認

HUBOT_SHELL_USER_NAME='naichi' PATH="./node_modules/hubot/node_modules/.bin:$PATH" $(npm bin)/hubot -a shell -n hubot -r src

herokuにデプロイ

git管理してから

heroku create
git push heroku master
heroku config:set \
HUBOT_SLACK_TOKEN=xxxx-11111111111-aaaaaaaaaaaaaaaaaaaaaa

リスナー登録

  • robot.respond /hello/, (res) ->
    • hubot hello のようなメンションを受け取るリスナーを登録する
  • robot.hear /(.+)から選んで/, (msg) ->
    • パターンそのままを受け取るリスナーを登録する

npm install

$ npm install --save cheerio

-g をつけなければそのフォルダにだけインストールされるみたい。

githubからnpm install

$ npm install --save naichilab/hubot-7days-later

上記npm install をした上で、external-scripts.json に追記する

[
  "hubot-diagnostics",
  "hubot-help",
  "hubot-heroku-keepalive",
  "hubot-google-images",
  "hubot-google-translate",
  "hubot-pugme",
  "hubot-maps",
  "hubot-redis-brain",
  "hubot-rules",
  "hubot-shipit",
  "hubot-7days-later"
]

環境変数

process.env.HOGEHOGE

参考:設定を読み込む Hubot スクリプトをつくろう - Qiita

test

npm install -g grunt-cli しておく

grunt test で単発実行

grunt test:watch でファイル監視&自動実行