1、webhook介绍
Gitee WebHook触发器 的功能是帮助用户 push 代码后,自动回调一个您设定的 http 地址。例如我们可以通过添加webhook触发器来实现这样一个功能:
每当开发push代码到提测分支后,自动触发jenkins构建,运行自动化测试用例,快速回归测试并输出测试报告,实现自动化测试集成到项目流程中来保障项目质量。
2、jenkins项目添加webhook触发器
项目配置 >> 构建触发器 >> 选择Gitee webhook触发器,触发器的分类如下:
- 触发远程构建
- 其他工程构建后触发构建
- 定时构建
- Gitee webhook 构建
- GitHub hook构建
- 轮询SCM构建,是指定时扫描本地代码仓库的代码是否有变更,如果代码有变更就触发项目构建
生成Gitee WebHook密码:46d678257c0399b105635bcb9722ea09
3、Gitee项目添加webhook 触发器
Gitee项目 >> 管理 >> WebHooks >> 添加webhook
注意:
由于我的jenkins是部署在本地的,对应的URL是本地的,需要通过内网穿透技术将内网地址转换成外网地址。
4、内网穿透技术,将本地地址映射成外网地址
我这里使用的是cpolar,也可以自行百度内网穿透的其它工具。
参考:Windows用户如何安装及使用内网穿透工具-cpolar - 知乎
安装cpolar并配置好环境变量之后,cmd打开命令行窗口执行命令:
cpolar http 8080
运行结果如下图:
该命令创建了两个HTTP协议的Tunnel隧道,分别为HTTP和HTTPS协议,指向了本地的8080端口的内网站点,将webhook的URL中localhost:8080的内网地址部分替换成HTTP协议的外网地址。
配置好webhooks后,测试一下
"Gitee 用户 Gitee 推送触发构建",通过Gitee触发jenkins构建成功了。
5、测试webhook触发器
打开Pycharm修改本地项目,然后push到Gitee,提交成功后查看jenkins项目是否构建。
"Gitee 用户 panc-test 推送触发构建",可以看到这里我们提交代码到gitee上触发 了自动构建。
WebHooks - Gitee.com