我正在使用具有顺序执行的mutli-configuration作业。 2轴: - 奴隶 - 用户定义的
Jenkins以“随机”顺序运行我的工作。
有没有办法解决这个问题? 为什么jenkins不使用used-defined变量的顺序(第一行第一行)?
问候
答案 0 :(得分:3)
可以使用Matrix configuration sorter plugin
[1]。安装插件后,您会看到一个选项Execution order of builds
,其中包含以下值:
选择最后一个选项应按照在轴中指定的方式对作业进行排序,但仅限于最后一个。
[1] https://wiki.jenkins-ci.org/display/JENKINS/Matrix+configuration+sorter+plugin
答案 1 :(得分:2)
根据John Smart的Jenkins: The Definitive Guide第267页,Jenkins将以与参数值相同的方式使用轴的值,但是当触发时,每个轴值将运行一次作业。
这些值的顺序不固定(可能是随机的;我不确定)。据推测,这里的假设是有足够的构建从属,每个排列可以由不同的从属处理,并且排列的顺序无关紧要。我说排列是因为,如果有多个轴,则构建总数对应于轴的笛卡尔乘积。
多轴场景可能解释为什么无法在用户定义的轴中指定顺序:它会很复杂,并且当构建从属分布时,不是很有用。詹金斯根本没有关心轴排序的原因。一个轴和一个构建从属的简单情况,其中排序可能实际上很重要,本质上是一个边缘情况。