有没有一种方法可以避免参数化的Jenkins构建重复?

4
我知道在Jenkins中,您可以通过不勾选“必要时执行并发构建”复选框来避免重复构建。然而,它判断并发构建的方式只是看该作业本身是否正在运行。我希望它可以基于传递到工作的所有参数是否相同来确定并发构建。
因此,如果队列中有一个带有参数foo和bar的作业,那么将foo和baz作为参数排队应该实际上排队,但是使用参数foo和bar再次排队应该被取消。
这种情况是否可行?
1个回答

2
我相信Jenkins会自动终止排队的作业,如果之前排队的作业具有完全相同的参数。如果一个作业被排队并带有参数foo和bar,那么再次使用foo和bar排队相同的作业将被丢弃。
在你的例子中(第一个带有foo和bar的作业,第二个带有foo和baz的作业,第三个带有foo和bar的作业),我相信所有作业都将排队。

1
嗨,Jason,感谢你的回答。不幸的是,情况似乎并非如此。特别是,如果具有foo/bar参数的作业正在运行,并且您再次运行相同的作业,Jenkins会愉快地并行运行两个作业。 - Jordan
1
正确 - 一旦任务开始运行,检查似乎不起作用。检查似乎只对排队的任务有效。您可能正在寻找一个新的 Jenkins 功能或者一个新的 Jenkins 插件。 - Jason Swager
谢谢。看起来目前没有可用的东西,所以我会接受你的答案。它帮助我更好地理解了它的工作原理,所以谢谢! - Jordan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接