矩阵中的一个配置每次都被取消

时间:2013-06-20 11:56:06

标签: jenkins continuous-integration

我有两个项目和依赖项,因此项目A启动,它从git更新文件,然后运行多配置项目B,其中:

  • 有三个轴:“foo”,“bar”和“baz”,11 x 4 x 2个项目

    我将从轴foo等调用项目N的值为fooN。

  • 有一个配置过滤器,仅在运行时排除最后一个轴 baz=="baz1"(也许在以后的阶段我们也想用baz2运行测试 为baz)

  • 运行只有cd s的shell脚本,并用脚本调用python interpreter

    cd /path/to/scripts
    python test_${bar}.py
    

因此,当项目运行时,我希望测试44个配置。但只有43个。

它始终是相同的配置(恰好是触发的最后一个配置,因为Jenkins似乎记得从不运行的顺序(?)):

    最终矩阵中的
  • 看起来像带有“已禁用”工具提示的灰点

  • 控制台输出中的
  • 在为所有44种组合说“触发bazN,barN,fooN”之后, 然后“bazN,barN,fooN完成结果SUCCESS”除了最后一个,但是 最后一个似乎总是取消/中止:

    baz1,bar7,foo3 appears to be cancelled
    baz1,bar7,foo3 completed with result ABORTED
    
  • 单一组合的控制台输出不可用---它看起来永远不会 已建成

  • Jenkins日志没有显示任何有趣的“baz1,bar7,foo3”

这是什么意思?还有其他指针如何排除故障吗?

编辑:我尝试在repo中添加“HTTP ping”脚本并从上面的脚本调用它,           就在python test_${bar}.py部分之前。这证明了对受影响的人           配置,Jenkins甚至没有运行这些行。

3 个答案:

答案 0 :(得分:9)

不知道你是如何开始的(可能是bug):

configure附加到已禁用配置的网址,并在结果表单中取消选中已禁用保存

答案 1 :(得分:0)

不是真正的答案,但作为问题的解决方法,将整个项目克隆到新项目有所帮助:使用新项目,所有配置都正常运行。

答案 2 :(得分:0)

这是一个解决了Jenkins的问题: https://issues.jenkins-ci.org/browse/JENKINS-19179

通过Matrix Project插件1.4版: https://wiki.jenkins-ci.org/display/JENKINS/Matrix+Project+Plugin