2012-05-16 112 views
3

我有2个Jenkins从属主站(3台机器)。例如Slave1和Slave2。我有两份工作,并使用标签将工作与奴隶绑定。例如,Job1绑定到Slave1,Job2绑定到Slave2。两者都是自由式的工作。我创建了一个只调用Job1和Job2的自由样式作业,以便它们同时在从属节点上运行。我希望这两个作业始终以相同的内部版本号构建,或者继承上游作业的内部版本号。有没有办法将主要作业的编号发送给两个下游作业?我想阻止Job1和Job2的内部版本号不同步,这会在单独运行时发生。设置生成Jenkins中主作业的下游作业数量

+0

为什么不阻止一个工作自己运行?如果您仍然允许单独运行下游构建器,那么继承上游作业的构建编号只会导致更多的痛苦,因为您将得到一个上游构建编号,该编号重复以前的单个运行。 – Amber

+0

@Amber我使用这个吗? '禁用构建(在项目重新启用之前,不会执行新的构建。)? ...这是我看到的唯一可能做到的事情...... –

回答

2

Jenkins Java API有一个方法:Job::updateNextBuildNumber(int)。因此,您可以尝试以下方法:从系统Groovy脚本(可通过Groovy Plugin运行)查找子作业对象,通过上述方法设置构建号;然后触发它们。

但是,您仍然可能会遇到问题。例如,如果其中一个作业是手动触发的,则可能无法在其上设置编号(编号必须增加)。

相关问题