我正在尝试使用Matrix Groovy Execution Strategy Plugin为Jenkins实现更复杂的组合过滤器。有关更多详细信息,请参见我的previous question。似乎可以正常工作,但是如果设置了标签的节点处于脱机状态,则矩阵作业将挂起,并且不会将其余矩阵项放入作业队列中。
这足以在插件中产生相同的效果:
combinations.each{
result[it.cfg] = result[it.cfg] ?: []
result[it.cfg] << it
}
return [result, true]
如果将执行策略设置为“经典”,则即使某些节点处于脱机状态,所有作业标签也会进入队列。如果有任何不同,我启用了“执行并发构建(如有必要)”。
我需要修复某些设置吗?这是插件问题吗?
答案 0 :(得分:2)
那是因为经典策略将所有关键作业都排在了队列中,然后将其他作业排入了队列。
此插件将按部分计划它们,如果节点处于脱机状态,则它们将等待,这是标准行为
您可以尝试this
注意:我写了矩阵执行策略插件
包含评论
您可以通过以下操作强制所有组合一次性提交:
combinations.each{
result["a"] = result["a"] ?: []
result["a"] << it
}
return [result, true]