3

我有一个构建流程,依次构建 4 个作业

例如;

build(Job 1)
build(Job 2)
build(Job 3)
build(Job 4)

即使之前的任何作业也失败了,我也想运行作业 4。我怎样才能在构建流程中做到这一点?

4

3 回答 3

5

您可以将传播设置为 false,这将确保在特定作业失败时您的工作流程将继续:

build job: '<job_name>', propagate: false
于 2015-10-28T19:06:59.517 回答
1

对我来说,propagate: false没有用,所以我ignore(FAILURE)在我的 BuildFlow 中使用,以确保流中的所有作业都执行,即使出现故障。(参考

  ignore(FAILURE) {
        build("JobToCall",  Param1: "param1Val", Param2: "param2Val")
    }
于 2017-10-06T07:18:44.807 回答
0

您可以按如下方式使用Jenkins Workflow 插件:

try {
  build 'A'
} catch(e) {
  echo 'Build for job A failed'
}
try {
  build 'B'
} catch(e) {
  echo 'Build for job B failed'
}

您可以将此习惯用法扩展到任意数量的作业或您想要的任何成功/失败流的组合(例如,如果您想构建一些作业以防另一个作业失败,则build在 es 中添加步骤)。catch

于 2015-10-29T14:25:12.817 回答