一尘不染

如何仅执行詹金斯中最新的排队作业?

jenkins

我在詹金斯(Jenkins)有一个提交构建项目,该项目计划在完成时安排一个接受构建项目。由于提交的速度快于接受构建作业的完成时间,因此不久之后,现在有
六个 排队的接受构建作业。我希望验收构建项目像“投票SCM”功能一样工作- 完成后,开始最近排队的作业 ,跳过其余的 作业

没有更多的技巧,我无法使用“在构建其他项目之后构建”,因为我需要将信息从提交构建作业传递到验收构建作业。


阅读 189

收藏
2020-07-25

共1个答案

一尘不染

@ l0b0,

Jenkins的行为是合并构建,以便队列仅包含当前正在运行的构建和一个排队的作业。仅当新入队的作业采用与队列中已有参数不同的参数时,深度才会增加。

因此,我正在收集您的下游(接受)作业需要某种参数,但是您需要提供有关其工作方式的更多详细信息。

如果您使用的是参数化触发器插件,则应签出此现有的SO线程

一般来说,您应该调查一下参数。听起来您好像将太多的信息从上游作业传递到下游作业,导致Jenkins队列将它们视为不同的参数,而此时并不一定如此。

您是否将上一个成功的上游作业的运行编号作为参数传递?如果是这样,那么是的,您遇到了问题。相反,您应该做的是在上游作业上使用Promoted Build
Plugin
标记上一次成功的构建,然后让下游作业简单地跳转到最新的提升版本。

希望有帮助。

2020-07-25