lbhook

0.1.24 • Public • Published

lbhook

WebHook 触发执行 Shell 脚本

安装

npm install -g lbhook

使用说明

输入 lbhook 即可得到帮助

Usage:  lbhook <command> [options]
 
Options:
  -V, --version       output the version number
  -h, --help          output usage information
 
Commands:
  start               start lbhook server
  stop                stop lbhook server
  list                show all hooks
  add <name> <shell>  add hook
  rm <name>           remove hook
  init <type>         initializes a shell script in the current directory
 
  Run lbhook <comman> --help for detailed usage of given command.

示例

启动 lbhook

lbhook start

lbhook start 执行后,会开启 lbhook 服务,服务启动在 11333 端口。

添加 hook

# 创建触发的脚本 
touch test.sh
# 添加脚本内容:hook 触发时创建 test 文件夹 
echo "mkdir test" > test.sh
# 添加 hook 
lbhook add test test.sh
# 查看 hook 是否添加 
lbhook list
# 输出:address 需要添加到 git 仓库的 WebHook 去 
Name            Shell                                      address                                   
--------------  -----------------------------------------  ------------------------------------------   
test            /root/pro/lbhook/test.sh                 http://119.23.215.213:11333/test 

在 git 仓库添加 WebHook

将刚刚 list 输出的 address 添加到 Git 仓库的 WebHook 中去

http://119.23.215.213:11333/test 

对仓库发起 push 请求后将触发 webhook,webhook 会触发服务器添加的 hook , shell脚本执行,test 文件夹被创建。 hook 执行 shell 脚本的日志会输出在 ./.lbhook/ 文件夹下。

自动部署

借由此功能可以实现 Push 到 Git 仓库,触发服务器 Hook,Shell脚本执行,来完成一个简单的自动部署。

init 命令

lbhook 已经内置了一些初始模板:

  • egg Egg.js 的更新与启动
  • up 仅从拉取最新的 commit
  • vue Vue 的更新与构建

使用方法:

# 到仓库目录执行以下一条命令,他们会在当前目录创建其对应的 lbhook.sh 脚本 
lbhook init egg
lbhook init up
lbhook init vue
# 添加到 hook 
lbhook add egg-test lbhook.sh
# 查看地址 
lbhook list

将地址添加到 git 仓库的 webhook 完成。

Readme

Keywords

none

Package Sidebar

Install

npm i lbhook

Weekly Downloads

3

Version

0.1.24

License

MIT

Unpacked Size

690 kB

Total Files

34

Last publish

Collaborators

  • lblblong