Jenkins定时触发构建的同时设定参数。可以根据不同的定时构建器设置不同参数或环境变量的值。可以设置多个参数。并结合when控制stage流程的执行。结合when和triggeredBy区分定时构建的stage和手动执行的stage。
目录
Jenkins插件名称:Parameterized Scheduler
插件链接:Parameterized Scheduler插件官方文档
这个是官方文档,其中包含了安装,介绍,使用示例,Issues等相关信息。
config位置:configure->Build Triggers->Build periodically with parameters
下面为对官方文档的机翻+自我理解和使用实例补充。
什么是Parameterized Scheduler?
Parameterized Scheduler是一个 Jenkins 插件,支持在构建计划中设置参数。支持使用多个 cron 行,每个 cron 行都以 % 和一些键值对name=value结尾,可以安排参数化构建在不同时间使用不同参数运行。
能在不同的cron表达式下设置不同的参数值,可以同时设置多个参数值。
安装参考:https://www.jenkins.io/doc/book/managing/plugins/
安装完之后,配置页面config会有如下标识:
如何配置实现呢?
Build periodically with parameters
中%
符号之前的 cron表达式
的编写和处理方式与 jenkins 中的 Build periodically Schedule
相同。不同的是Build periodically with parameters
在corn表达式
后加%
,然后添加项目构建参数所需的name=value
键值对,可以同时添加多个。
这个插件的idea
源于Job流程构建时可能会使用到不同环境的需要。在不同的定时构建条件下,构建流程的参数可以设置为不同的,从而控制流程的开合。
其中Build periodically Schedule
中cron表达式
类似为
triggers{
cron('H * * * *')
}
Build periodically with parameters
的cron表达式
设置可参考下文:
示例一,不同corn表达式指定单个参数的值
在此示例中,有两个cron表达式,表示的是两种定时构建方案。
其中每隔15min触发的Job流程里,Job参数会被设置为env=int
;
其中每隔30min触发的Job流程里,Job参数会被设置为env=qa