我试图动态地将优先级(从1到5)应用于通过包含BuildPriority参数的URL启动的Jenkins作业。
在“优先排序器配置”中,我选择了
->在为作业分配优先级时使用其他规则
并选择“使用来自构建参数的优先级”作为构建策略。
我离开了Build Parameter Name =“ BuildPriority”。
通过以下方式开始工作:
http://localhost:8080/job/myJobName/buildWithParameters?PARAM1=value1&PARAM2=value2&BuildPriority=1
不应用优先级。我尝试向名为“ BuildPriority”的作业添加字符串参数,但效果不佳。我究竟做错了什么?
提前谢谢了,
马库斯
更新:
我发现这个相关的错误已被跟踪:https : //issues.jenkins-ci.org/browse/JENKINS-22294
更新2: 对于那些正在寻找解决方案的人,我可以提供一种解决方法:允许并行构建对应的作业,并将Jenkins设置中的处理器/内核数量减少到1。如果您不希望这样做,请使用所有内核,请安装Throttle Concurrent Builds插件,该插件可让您自行“限制”每个作业至所需的任意多个内核。限制为1并允许并行构建使我获得了预期的行为。
除非选中该选项,否则将阻止Priority Sorter插件(自具有Jenkins 2.73.3的插件版本3.6.0起)“看到” 单个 作业的队列Execute concurrent builds if necessary。
Execute concurrent builds if necessary
因此:允许并行构建对应的作业,并将Jenkins设置中的处理器/内核数减少为1。如果您不希望使用所有内核,请安装Throttle Concurrent Builds插件,以允许您使用所有内核。自行“限制”每个作业至所需的多个核心。限制1 并 允许并行构建使我获得了预期的行为。
1