詹金斯:获取管道内触发的作业的内部版本号

Gei*_*ist 5 jenkins jenkins-pipeline

我有一个管道,它在一个阶段内运行另一堆作业:

node{
 stage("building_other_components") {
  build 'job1' 
  build 'job2' }}
Run Code Online (Sandbox Code Playgroud)

如何恢复这些作业的内部版本号或 URL?我只想通过邮件发送 URL(例如:http://localhost:8080/job/job1/25 / last-changes/,我将添加last-changes部分)
谢谢,

mko*_*bit 7

只要您等待运行完成(默认值true),您就可以从build步骤的返回值中访问结果。返回值的类型为org.jenkinsci.plugins.workflow.support.steps.build.RunWrapper( Javadoc , source code )。您可以build使用代码段生成器查看该步骤的帮助。

以您的部分代码为例:

final job1Result = build('job1')
echo "Job 1 number: ${job1Result.number}"
final job2Result = build('job2')
echo "Job 2 number: ${job2Result.number}"
Run Code Online (Sandbox Code Playgroud)

这使用getNumber()方法来获取已执行运行的编号。