github-webhook

command module
v1.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 2, 2021 License: MIT Imports: 2 Imported by: 0

README

github-webhook

Build Status

https://img.shields.io/appveyor/build/yezihack/github-webhook

📡 Overview

  • The Github-webhook is a webhook tool on github,
  • That can trigger bash scripts after monitoring git's push behavior
  • The a line command handles the automatic build
  • Built-in queue for tasks, quick response to GitHub Webhook, 100% response 200 guaranteed
  1. github-webhook 是github webhook自动构建工具.能监听git push行为,自动触发脚本.
  2. 一条命令搞定webhook自动构建,无需复杂的配置.
  3. 内置队列执行任务,迅速响应 github webhook, 保证100% response 200

📜 Usage

1. Install

go get -u github.com/yezihack/github-webhook

2. Download
cp ~/github-webhook /usr/bin
chmod u+x /usr/bin/github-webhook

3. Command

  • Daemonize run: nohup github-webhook --bash /home/my.sh --secret mysecret -q & 后台运行
  • Monitor run: github-webhook --bash /home/my.sh --secret mysecret
  • Quiet mode run: github-webhook --bash /home/my.sh --secret mysecret --quiet
  • Custom port mode run: github-webhook --bash /home/my.sh --secret mysecret --port 6100 --quiet
  • Hidden secret mode run: github-webhook --bash /home/my.sh --quiet

add systemd service

/home/sh/hugo2www.sh is your script bash file

cat > /lib/systemd/system/webhook << EOF
[Unit]
Description=github-webhook
Documentation=https://github.com/yezihack/github-webhook
After=network.target
 
[Service]
Type=simple
ExecStart=/usr/bin/github-webhook --bash /home/sh/hugo2www.sh --secret qweqwe
Restart=on-failure
RestartSec=42s
 
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl start webhook
systemctl status webhook

4. WebHook

  • Default port: 2020
  • Http path: /web-hook
  • Test URL: http://ip:2020/ping
  • WebHook URL: http://ip:2020/web-hook

💌 Features

  • Just run the binaries file
  • Custom your bash script
  • Custom your enter secret
  • Custom your port. 0 ~ 65535
  • Quiet operation

中文

  • 直接运行二进制文件
  • 自定义脚本路径
  • 自定义密码
  • 自定义端口. 0 ~ 65535
  • 安静模式
GLOBAL OPTIONS:
   --bash value, -b value    Execute the script path. eg: /home/hook.sh
   --port value, -p value    http port (default: 2020)
   --secret value, -s value  github hook secret
   --quiet, -q               quiet operation (default: false)
   --verbose, --vv           print verbose (default: false)
   --help, -h                show help (default: false)
   --version, -v             print the version (default: false)

中文

GLOBAL OPTIONS:
   --bash value, -b value    Execute the script path. eg: /home/hook.sh 自定义脚本
   --port value, -p value    http port (default: 2020) 自定义端口,默认6666
   --secret value, -s value  github hook secret 自定义密码, 不允许为空
   --verbose, --vv           print verbose (default: false) 打印更多详细信息
   --quiet, -q               quiet operation (default: false) 安静模式,默认关闭. -q 开启,不输出任何信息
   --help, -h                show help (default: false) 
   --version, -v             print the version (default: false)

How it works

github-webhook

  • step 1:: Run your github-webhook server

    • notice: port default 2020, http-path: /web-hook
    • 注意: 端口默认为 2020, 可以更改, http的路由: /web-hook
    • 查看自己的外网Ip: curp ip.sb

  • step 2: Add webhook

    • 添加 webhook 参数

      配置第一步

      配置第二步

      配置第三步

  • step 3: run shell script

  • notice: Make sure that the last line write: exit 0

  • shell脚本的最后一行一定要写上 exit 0 代码

#!/bin/bash
echo "hello webhook"
exit 0

👋 Thanks

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL