触发器参数化构建在jenkins管道作业中找不到buildpath

时间:2017-08-22 11:18:29

标签: jenkins groovy jenkins-pipeline

我的代码动态创建一个.groovy文件,该文件在并行步骤中触发参数化构建:

def executeParallelBuilds(){
    try {
        parallel(
            build1BUILD: {
                def build1BUILD = build job: 'TA/test1', parameters: [string(name: "CPNUM_PARAM", value: 1.141)]
            }, 
            build2BUILD: {
                def build2BUILD = build job: 'TA/test2', parameters: [string(name: "CPNUM_PARAM", value: 1.141)]
            },
            failFast: false
        )
    } catch (e) {
        echo "An error ocurred while building"
        currentBuild.result="UNSTABLE"
    }
}
return this;

现在,我使用:

加载并执行groovy文件
node('master'){
    def executeGroovyFile = load buildFilePath
    executeGroovyFile.executeParallelBuilds()
}

但似乎我的管道无法通过路径找到Buildjobs

[Pipeline] }
[Pipeline] // node
[Pipeline] node
Running on master in C:\DevApps\Jenkins\workspace\TA\pipeline_1.0_TEMPLATE
[Pipeline] {
[Pipeline] load
[Pipeline] { (D:\BuildResults_tmp\TA\MBE3\\buildString.groovy)
[Pipeline] }
[Pipeline] // load
[Pipeline] parallel
[Pipeline] [build1BUILD] { (Branch: build1BUILD)
[Pipeline] [build2BUILD] { (Branch: build2BUILD)
[Pipeline] [build1BUILD] build
[Pipeline] [build1BUILD] }
[build1BUILD] Failed in branch build1BUILD
[Pipeline] [build2BUILD] build
[Pipeline] [build2BUILD] }
[build2BUILD] Failed in branch build2BUILD
[Pipeline] // parallel
[Pipeline] echo
An error ocurred while building
[Pipeline] }

我做错了什么?我在我的主服务器上加载并执行.groovy文件,以便管道应该能够找到其他工作。 (没有节点声明我无法加载和执行)

编辑:令我困惑的是,我没有收到以下错误:

  

找不到名为some-downtream-job-name的参数化作业

1 个答案:

答案 0 :(得分:0)

构建调用存在问题。 我将整个代码作为String保存到.groovy文件中。这给了我一些正确的符号挣扎。 (报价和双重qoutes) 将我的脚本调用为:

def build1BUILD = build job: BuildJobNameList[i], parameters: [string(name: "CPNUM_PARAM", value: 1.141)]

一切正常