webhook 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
webhook 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
webhook 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
webhook 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
webhook 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 MIT
开发语言 Python 查看源码 »
操作系统 跨平台
软件类型 开源软件
所属分类 其他
开源组织
地区 国产
投 递 者 南院逍大王
适用人群 未知
收录时间 2017-03-31

软件简介

webhookit 是一个极简的命令行版本的 git webhok,部署容易,非常简单就可以部署一个 webhook server。支持GitHub, GitLab, GitOsc, Gogs, Coding。Python 2 / 3 都支持。

1. 安装

pip install webhookit

支持 Python 2 / 3。安装之后,在系统中可以得到两个命令工具:webhookit and webhookit_config

2. 使用

运行 webhookit --help 可以得到命令的帮助信息,具体的信息如下:

# webhookit --help
Usage: webhookit [OPTIONS]

Options:
  -c, --config PATH      The web hook configure file path.
  -p, --port INTEGER     The listening port of HTTP server.
  --help                 Show this message and exit.

运行 webhookit_config 可以得到工具配置的模版内容。

运行 webhookit -c config.py -p 18340 开启一个 webhook 的 http 服务器。

3. 一个示例

下面是一个简单的例子,用来展示如何使用本工具:

# 1. 安装 webhookit
pip install webhookit

# 2. 初始化一个配置模版
webhookit_config > /home/hustcc/webhook-configs/config4hustcc.py

# 3. 更新 config4hustcc.py 配置内容
vim config4hustcc.py

# 4. 运行 http server
webhookit -c config4hustcc.py

然后在浏览器中打开 http://host:18340 就可以看到下面的一些信息了:

  1. webhook 执行的状态;

  2. webhook 的 URL 地址;

  3. webhook 的配置信息(隐藏私密信息);

4. 配置文件说明

# -*- coding: utf-8 -*-
'''
Created on Mar-03-17 15:14:34
@author: hustcc/webhookit
'''

# This means:
# When get a webhook request from `repo_name` on branch `branch_name`,
# will exec SCRIPT on servers config in the array.
WEBHOOKIT_CONFIGURE = {
    # a web hook request can trigger multiple servers.
    'repo_name/branch_name': [{
        # if exec shell on local server, keep empty.
        'HOST': '',  # will exec shell on which server.
        'PORT': '',  # ssh port, default is 22.
        'USER': '',  # linux user name
        'PWD': '',  # user password or private key.

        # The webhook shell script path.
        'SCRIPT': '/home/hustcc/exec_hook_shell.sh'
    }, 
	...],
	...
}

Python 变量名 WEBHOOKIT_CONFIGURE 不要去修改。

每个 webhook 都用仓库的名字和分支名字 'repo_name/branch_name' 作为它的键值,每个 webhook 可以触发一组服务器,这些服务器的配置信息存储在一个数组中。

服务器可以是远程的服务器,也可以是本地机器,如果要触发本机的脚本运行,那么请保持 HOSTPORTUSERPWD 这些配置为空,或者不存在这些键值。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (1)

加载中
南院逍大王软件作者
初学 tornado 框架,请多指教…
2017/03/31 18:52
回复
举报
更多评论
暂无内容
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
2019/09/20 10:16

Kubernetes v1.16 发布 | 云原生生态周报 Vol. 20

作者:心贵、进超、元毅、心水、衷源、洗兵 业界要闻 Kubernetes v1.16 发布 在这次发布中值得关注的一些特性和 Feature: CRD 正式进入 GA 阶段; Admission Webhook 正式进入 GA 阶段; CSI 和 Volume 的一系列增强和修复。 蚂蚁金服开源 ElasticDL 项目 9 月 11 日,蚂蚁金服在 2019 谷歌开发者大会上海站上开源了 ElasticDL 项目,这是业界首个基于 TensorFlow 实现弹性深度学习的开源系统。ElasticDL 实现了容错和弹性调度的...

6
18
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
1 评论
6 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部