Har*_*own 5 jenkins jenkins-pipeline jenkins-2 jenkins-declarative-pipeline
我们有一个使用声明性管道的 Jenkins 工作。
此作业可以由不同的其他构建触发。
在声明性管道中,如何找出哪个构建触发了管道?
下面的代码示例
管道{
代理任何
阶段{
阶段('找到上游工作'){
脚步 {
脚本 {
def 原因 = currentBuild.rawBuild.getCauses()
for(原因中的原因){
if (cause.class.toString().contains("UpstreamCause")) {
println "这个工作是由工作造成的 " + cause.upstreamProject
} 别的 {
println "根本原因:" + cause.toString()
}
}
}
}
}
}
}
您可以检查作业的 REST API 以获取如下额外信息
{
"_class": "org.jenkinsci.plugins.workflow.job.WorkflowRun",
“行动”:[
{
"_class": "hudson.model.ParametersAction",
“参数” : [
]
},
{
"_class": "hudson.model.CauseAction",
“原因”:[
{
"_class": "hudson.model.Cause$UpstreamCause",
"shortDescription" : "由上游项目启动 \"larrycai-sto-46908390\" 版本号 7",
“上游构建”:7,
"upstreamProject" : "larrycai-sto-46908390",
"upstreamUrl" : "job/larrycai-sto-46908390/"
}
]
},
参考:
| 归档时间: |
|
| 查看次数: |
7728 次 |
| 最近记录: |