ToC
いまさら感がありますが、CentOS7にHubotをインストールしてみます。 hubot公式ガイドにしたがって、 インストールしていきます。 導入の前提として、nodejsとnpmが必要なようですので準備します。
OSにhubotユーザーを作成
hubotが動作するOSユーザーを作成します。 今回は、hubotユーザーとして作成します。
useradd hubot passwd hubot
ユーザーが作成されました。 以降の作業は、hubotユーザーを利用して実行します。
nvmをインストール
Node Version Managerをまずはインストールします。 しばらく処理の実行ログが流れたあと正常終了したら、.bashrcを再ロードしましょう。
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash
=> Downloading nvm from git to '/home/hubot/.nvm'
=> Cloning into '/home/hubot/.nvm'
... 〜省略〜
=> Appending source string to /home/hubot/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:
export NVM_DIR="/home/hubot/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
NodeJSをインストール
nvmを利用して、nodejsをインストールします。
nvm install node
とコマンドを入力すれば、最新版のnodejsがインストールされます。
npm
も同時にインストールされています。
nvm install node
######################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v8.5.0 (npm v5.3.0)
Creating default alias: default -> node (-> v8.5.0)
npmで各種モジュール群をインストール
npmのコマンドを使っていくつかのモジュール群をインストールします。
npm install -g hubot coffee-script npm install -g yo generator-hubot
hubotをインストール
hubotのモジュール群を配備するディレクトリを作成します。
今回は atombot
という名前にします。途中で対話式でいくつかの入力を求められますが、
適切に入力すればhubotのインストールは完了です。
mkdir atombot
cd atombot/
yo hubot
_____________________________
/ \
//\ | Extracting input for |
////\ _____ | self-replication process |
//////\ /_____\ \ /
======= |[^_/\_]| /----------------------------
| | _|___@@__|__
+===+/ /// \_\
| |_\ /// HUBOT/\\
|___/\// / \\
\ / +---+
\____/ | |
| //| +===+
\// |xx|
? Owner User <user@example.com>
? Bot name atombot
? Description A simple helpful robot for your Company
? Bot adapter campfire
rocketchatアダプターを使ってatombotをchatにJoinさせる
今回は rocketchat
のbotとして動作させてみることにします。
hubot-rocketchatの
ページにかなり詳細に記載されています。
RocketChatのURLやチャット接続ユーザーなどを環境変数に設定しておきます。
環境変数の値は、適切に変更して設定します。
なお、事前に rocketchat
側にbot用のユーザーやroomは適切に作成しておく必要があります。
export ROCKETCHAT_URL=http://{rocketchat-url}:{port}
export ROCKETCHAT_ROOM=general,atom
export ROCKETCHAT_USER={bot-user-name}
export ROCKETCHAT_PASSWORD={bot-user-password}
export ROCKETCHAT_AUTH=password
あとは起動するだけです。
しばらくすると、atombot
がチャットルームに参加してくるはずです。
npm install hubot-rocketchat bin/hubot -a rocketchat
自分好みのスクリプトを書いてhubotに問いかけることで、仕事の効率化が はかれるかもしれないですね。hubotスクリプトは、また今度やってみようと思います。
参照
[amazon_link asins=‘4800711428,4798150738,4774167975,4798051640,4798125997,4048910779’ template=‘ProductCarousel’ store=‘lunalab-22’ marketplace=‘JP’ link_id=‘c149c303-a103-11e7-a72e-3590ba5a1cf6’]