最新のnodeでhubotのテストをするためにherokuではなくvps上に構築したメモ
先ずはnodebrewを入れる
curl -L git.io/nodebrew | perl - setup
cat <<EOF >> ~/.bashrc
export PATH=$HOME/.nodebrew/current/bin:$PATH
EOF
. ~/.bashrc
最新のnodeをインストールする
確認
nodebrew ls-remote
...
v0.12.0 v0.12.1 v0.12.2 v0.12.3 v0.12.4 v0.12.5 v0.12.6 v0.12.7
...
最新はv0.12.7なのでそれをインストールする
nodebrew install-binary v0.12.7
nodebrew use v0.12.7
use v0.12.7
saito@ws2 ~ $ nodebrew ls
v0.12.7
current: v0.12.7
hubotインストール
npm install -g yo generator-hubot
hubotプロジェクト作成
hubot.psycl.oneで稼働させる予定なのでそういうディレクトリを作る
mkdir hubot.psycl.one && cd hubot.psycl.one
yo hubot
以下の様なエラーが出たら npm cache clear
を実行すると解消されることがある
gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: node-v0.12.7.tar.gz local checksum 67d140fb6f4fdd6a1cfb011f5c35a3192538195adf57cf536d3b3597e7b37cd4 not match remote b23d64df051c9c969b0c583f802d5d71de342e53067127a5061415be7e12f39d
起動確認
./bin/hubot
psyclonebot> psyclonebot ping
PONG
pm2でnodeをデーモン化する
pm2をインストール
npm install -g coffee-script pm2@latest
起動
pm2 start -i 1 --name psyclonebot -f node_modules/.bin/coffee -- node_modules/.bin/hubot -a xmpp -n psyclonebot
エラー
coffee-script
がグローバルにインストールされてない場合
2015-07-26 12:20:04: Error: spawn coffee ENOENT
at exports._errnoException (util.js:746:11)
at Process.ChildProcess._handle.onexit (child_process.js:1053:32)
at child_process.js:1144:20
at process._tickDomainCallback (node.js:381:11)
[amazonjs asin=”B00URMH4UK” locale=”JP” title=”Automation and Monitoring with Hubot: For DevOps and Developers (English Edition)”]
コメント