在失败阶段后继续Jenkins工作,同时将阶段标记为失败

时间:2017-07-20 18:58:30

标签: jenkins jenkins-pipeline jobs stage

我目前有4个jenkins阶段进行单独的性能测试。目前,如果perf测试失败,则整个管道失败。我可以通过包装try catch来缓解这种情况,这将让我继续,但是当它实际上失败时将标记为成功。 我想为失败的舞台获得一个红色故障框,并允许其他阶段运行。 我不担心詹金斯是否将整个工作标记为失败,只要失败的阶段突出显示并且不会阻止其他阶段运行。

4 个答案:

答案 0 :(得分:1)

在这里查看Show a Jenkins pipeline stage as failed without failing the whole job

请注意,您可以选择是将整个作业标记为是否失败,但最重要的是,无论是否标记失败,所有阶段都会完成。

我认为这是一个重复的问题,但我无法将问题联系起来。

答案 1 :(得分:0)

这是不可能的。阶段只能在前一阶段过去时才能运行。

你可以做的一件事就是在同一个阶段同时运行四个作业。我不知道您目前是否使用蓝海UI,但它会在一个单独的小圆圈中显示每个作业,如果一个失败,则很明显哪一个失败了(非常像经典的管道UI你可以准确地告诉哪个阶段失败了。) 有一些我在https://jenkins.io/blog/2016/05/26/introducing-blue-ocean/谈论的内容的图片,包括this

答案 2 :(得分:0)

要忽略测试阶段失败,我们可以在jenkins的maven目标下添加以下参数

clean install -PDEV Dmaven.test.failure.ignore=true

答案 3 :(得分:0)

回答我自己的问题:
将有问题的阶段包装在try / catch或catchError

catchError{
  stage("stage"){
    // command
  }
}

管道将继续,但是阶段将在GUI中标记为失败/红色,其余工作将继续。