目录
1、构建触发器
1.1、触发远程构建
1.2、cron表达式
1.3、Build periodically(定期构建)
1.4、Poll SCM(轮询 SCM)
1、构建触发器
1.1、触发远程构建
1、设置Jenkins远程构建地址
- 注意事项:复制地址到postman或者另外一个新的浏览器中访问该地址,会要求进行身份认证(在浏览器中弹出登录页面),需要完成认证后才能成功触发。所以远程的gitlab服务调用会失败,解决这个问题,需要安装插件:Build Authorization Token Root,实现远程调用免登录认证。
- Build Authorization Token Root插件安装完成之后,查看插件使用文档(直接在插件中心点击插件查看),可以看到调用方式需要改为:buildByToken/build?job=NAME&token=SECRET. 的方式构建,如本例:http://172.xx.xx.xxx:8088/buildByToken/build?job=vis_demo&token=build
2、gitlab远程调用配置
- 1、配置路径:进入到指定项目页面->setting->Webhooks(gitlab发起远程调用的配置项)
- 注意:如果使用的http协议,Enable SSL verification 项需要取消勾选
- 2、当出现错误:Url is blocked: Requests to the local network are not allowed(不允许对本地网络的请求)
- 解决方式:菜单->设置->网络->出站请求->勾选:Allow requests to the local network from web hooks and services
- 3、设置完成后重新配置Webhooks,然后点击保存,成功后会出现如下信息:
1.2、cron表达式
说明:cron在线验证,可以在该网站完成cron表达式的验证和练习:Crontab.guru - The cron schedule expression editor
- 1、cron的组成部分:cron表达式一共5部分组成
- 2、cron符号含义说明:
- * :表示任意值
- , :表示多个值的分隔符,如:minute 对应的cron值为:10,20,30 分别表示在第10分钟、第20分钟、第30分钟
- - :表示值的范围,如:minute对应的cron值为:1-10 表示在1到10分钟这个闭区间
- / :表示值的步长,如:minute对应的cron值为: */10 表示10、20、30、40、50、00分
- 注意事项:cron表达式不支持秒级的构建
1.3、Build periodically(定期构建)
定义:这是一种基于时间间隔触发构建的方式。可以指定一个 Cron 表达式来定义构建的时间规则,Jenkins 将根据该表达式在特定的时间点自动触发构建。
1、定期执行任务
- 定期执行任务指的是到了构建时间,准时执行,示例如下:
- 30 8 * * * :表示每天的8:30执行
- */10 * * * * :表示每隔10分钟执行一次
2、分散构建执行
- 分散构建执行指的是,把设置的构建时间分散不同的时间点执行,实现的方式通过使用“H”关键字指定需要分散的时间,可作用与每个时间取值
- 原理:根据项目名称生成一个hash散列值,该hash值与H标记的时间进行运算,此时计算后的时间就会偏离实际指定的时间,因此每个任务的触发时间都会稍微有所偏移,从而避免了完全同时触发构建。
- 示例:
- H * * * * :表示每小时的固定分钟时间(由项目名的hash散列值决定)构建一次
- H(0-30)/10 * * * * :表示在每个小时的前半个小时内的起始时间不固定(先取间隔值为10,即第10分钟为起始值+项目名的hash散列值,由于当时的秒数不固定,所以起始时间也就不固定),步长固定10分钟执行一次
1.4、Poll SCM(轮询 SCM)
定义:这是一种基于源代码管理系统(SCM)的变动来触发构建的方式。Jenkins 会定期轮询 SCM 工具(如 Git、Subversion 等)检查代码仓库中是否有新的提交或更新。如果检测到仓库有变动,Jenkins 将触发构建。你可以指定轮询的时间间隔以及要监视的 SCM 工具和仓库地址。
- 注意事项
- 确保配置合适的时间间隔以避免频繁的构建,以节约资源和提高效率。同时,也要注意平衡构建触发的粒度,避免过于频繁或不必要的构建。
- 同样支持分散构建执行
- 示例:
- H/10 * * * * :表示将每个任务的轮询时间间隔设置为每隔 10 分钟的某个随机时间。
文章来源:https://www.toymoban.com/news/detail-816465.html
文章来源地址https://www.toymoban.com/news/detail-816465.html
到了这里,关于jenkins触发器构建配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!