Jenkins集成webhook触发自动构建
故知胜有五:知可以战与不可以战者胜,识众寡之用者胜,上下同欲者胜,以虞待不虞者胜,将能而君不御者胜。
----《孙子兵法》
一、前言
做自动化的过程中会碰到很多问题,诸如设计之处框架设计问题,场景应用问题,适用人群问题,使用频率问题等等,那么今天记录一下使用频率问题。
众所周知,自动化应用场景一般用于回归测试,无论平台、框架也好,归根结底得让我们设计的自动化跑起来,只有跑起来,跑的频次足够多,足够密集,才会发现各种各样的问题。
因此,来记录一下jenkins的webhook插件集成。
实现目的:
·让自动化工程跑的频次更频繁
·人工触发工程运行频次减少
·根据条件自动触发
应用场景:
·合并代码触发构建
·提交pr触发构建
二、原料和配件
·jenkins
·Generic Webhook Trigger插件
·Git类管理仓库
·自动化代码仓库
·原始代码仓库
三、实现步骤
①jenkins安装Generic Webhook Trigger插件
jenkins插件管理页搜索安装即可
②对应jenkins-job中构建触发器中添加Generic Webhook Trigger插件
③将步骤二中Is triggered by HTTP requests to http://JENKINS_URL/generic-webhook-trigger/invoke 链接复制出来
④打开git设置(被测代码),添加web-hook,此处实例试用的是Gitea,其他托管仓库是一样的,均提供了webhook功能,自行查找即可
⑤添加webhook
如无其他个性化需求,通常需要填写两个字段即可,目标URL和分支过滤。
目标url:步骤②复制出的url,http://JENKINS_URL/generic-webhook-trigger/invoke,此处jenkins_url为jenkins服务器url,你可以在其后追加参数。如添加?token=testdemo(因为可能有若干工程,使用额外参数便于区分,在jenkins插件中有对应填写的地方)
分支过滤:哪个分支有变动,则发送构建请求。如:release分支,test分支,master分支,自定义分支等等。
添加webhook完成,如下:
⑥jenkins配置
自定义参数设置(可在pipline脚本中进行引用):
token设置(步骤⑤在webhook中添加的参数):
配置完成
四、测试
①修改业务代码
②查看webhook发送构建请求
③查看对应jenkins工程构建记录
本文完!