hubot安装
安装npm
yum install -y npm
要运行自己的Hubot,需要通过生成器生成,首先安装generator-hubot
npm install -g yo generator-hubot
生成自己的hubot
mkdir myhubot
cd myhubot
yo hubot
如果是用root安装的话,这个时候可能会遇到很多权限上的错误,主要原因是它需要对于组有读写权限,所以:
chmod -R 777 /root/.config
chmod -R 777 /root/.npm/_locks
chmod -R 777 /root/.npm/_cacache
简单起见,这里打开了所有权限。
安装完成配置hubot重新 yo hubot
安装过程中会问你安装什么样的adapter,手工输入slack。
缺省安装的hubot,会带上heroku和redis,如果用不到的话,可以卸载掉:
npm uninstall hubot-heroku-keepalive --save
在hubot目录下的external-scripts.json文件中把有关heroku和redis的两行删掉就行了,否则老是会报几个警告。
然后,再把hubot-scripts.json删掉,目前我们暂时还用不到它:
rm -f hubot-scripts.json
OK,开始使用吧
./bin/hubot
执行:
myhubot helpmyhubot help
myhubot ping
连接hubot与slack
在slack上安装好hubot的插件,它会自动生成一个token,把这个token记下来
token在hubot目录下输入:
HUBOT_SLACK_TOKEN=你的token ./bin/hubot --adapter slack
如果没有报错的话,就可以看到Apps下面有我们建立的myhubot,这时候hubot就启动起来,等待接收命令了。但是由于hubot缺省加入的是slack的#general频道,如果你改掉了频道名字,或者删掉了这个频道的话,你需要重新邀请小机器人进入一个新的频道,否则没法对话。
time现在你可以在slack的客户端和小机器人对话了,可尝试输入命令:
myhubot pug metime
myhubot pug me
让hubot执行shell脚本
要让机器人执行shell脚本,我们需要安装:
npm install hubot-script-shellcmd
cp -R node_modules/hubot-script-shellcmd/bash ./
修改一下external-scripts.json,添加上以下模块:hubot-script-shellcmd。到此为止,你的external-scripts.json应该长的像这个样子:
external-scripts.json文件内容接下来,
cd bash/handlers
这里面的helloworld就是个例子,没什么用,可以删掉:
rm -f helloworld
把update改造成如下这样的:
#!/bin/bashcd /your/pathgit pullecho "successfully updated!"exit 0
OK,现在重启一下小机器人,在slack端输入:
myhubot shellcmd updatemyhubot shellcmd update
常用脚本使用操作示例
检查当前CPU使用情况
在bash/handlers文件夹下新建一个文件,名字就叫比如说cpu,内容如下:
#!/bin/bash
top -b -n2 -p 1 | fgrep "Cpu(s)" | tail -1 | awk -F'id,' -v prefix="$prefix" '{ split($1, vs, ","); v=vs[length(vs)]; sub("%", "", v); printf "%s%.1f%%\n", prefix, 100 - v }'
exit 0
然后,你每次只需要在slack里执行:
myhubot shellcmd cpumyhubot shellcmd cpu
这样就能知道你的服务器当前cpu使用率了,再也不用去服务器端执行top命令,也不用安装任何系统监控软件,然后打开浏览器看结果。是不是很方便呢?当然类似这样的脚本你还可以写很多,就不一一列举了。
---
网友评论