从以前的Jenkins管道运行中访问信息

时间:2018-06-20 11:49:24

标签: jenkins jenkins-pipeline

我有一个建立多个项目配置的管道。构建配置的顺序并不重要,重要的是所有构建是否成功。

我想知道的是,在管道的上一次运行中,哪个构建配置失败了(如果管道失败了)。计划是使用此信息从该配置开始下一个构建,因为很可能会再次失败。我已经可以使用currentBuild.getPreviousBuild().result访问以前的管道构建状态。以下任何一种都对我有用:

  1. 是否可以在管道运行之间存储信息(完整运行,而不是同一运行中的管道阶段)?

  1. 是否有可能达到先前管道失败的阶段?

1 个答案:

答案 0 :(得分:2)

您可以坚持在currentBuild.previousBuild.description失败的阶段。

作为替代方案,您可以将文件an存档,并通过currentBuild.previousBuild.rawBuild.artifactManager.root()对其进行访问。从那里开始,有了VirtualFile,您只需要遍历已归档的工件。请注意,这种更清洁却很长的解决方案(可能)将需要批准一系列用于管道沙箱的方法

PS:如JacekŚlimok所述,在用

设置env变量后
env.FAILING_BUILD="foo" 

可用于通过以下版本进行构建

currentBuild.previousBuild.buildVariables.FAILING_BUILD