2013-02-15 145 views
5

我正在使用顺序执行多配置作业。 2轴: - 奴隶 - 用户自定义多配置jenkins作业单

詹金斯运行我的工作在“随机”的顺序。

有没有办法解决这个问题? 为什么詹金斯不使用已定义变量的顺序(第一行)?

问候

回答

1

据约翰·智能的Jenkins: The Definitive Guide 267页,詹金斯将使用一个轴的值​​以同样的方式作为参数值,但触发时作业将每轴值运行一次。

这些值的顺序不固定(可能是随机的;我不确定)。假设这里的假设是有足够的构建奴隶,每个排列可以由不同的奴隶来处理,排列的顺序并不重要。我说排列,因为如果有多个轴,则构建的总数对应于轴的笛卡尔乘积。

一个多轴场景可能会解释为什么没有办法在用户定义的轴上指定顺序的答案:这将是复杂的,并且,当构建从站分布时,不是很有用。 Jenkins根本就不在乎轴的排列顺序,理由很充分。一个轴和一个构建奴隶的简单情况,其中排序可能实际上很重要,实质上是边缘情况。

2

为此可以使用Matrix configuration sorter plugin [1]。安装插件后,你会得到一个选项Execution order of builds,具有以下值可供选择:

  • 不在乎
  • 估计编译(最长的第一)
  • 估计编译持续时间的持续时间(最短第一)
  • 尾轴顺序

选择最后一个选项应当责令作业,他们均在轴指定的方式,虽然只有最后一个。

[1] https://wiki.jenkins-ci.org/display/JENKINS/Matrix+configuration+sorter+plugin

相关问题