在Jenkins管道中并行运行时,如何为每个环境处理唯一标识符?

时间:2018-12-11 23:23:02

标签: jenkins-pipeline jenkins-shared-libraries

我正在建立一个共享库,其中的“ vars”方法之一将创建一个环境并返回该环境的唯一标识符。然后在其他“ vars”方法中需要该标识符。我也想同时针对每个环境进行这项工作。

我的目标是Jenkinsfile使用“ vars”方法,并尽量减少混乱,因此理想情况下不要将唯一标识符传递给每种方法。是否有任何技术仅在“ vars”方法中保留这些唯一标识符,还是在传递给def的闭包中需要有parallel

基本上,我正在寻找一种与createOrg之类的其他“变量”方法共享在runTests中创建的唯一标识符的方法:

    def stagesPerOrg = [:]
    forEachOrg {
        def org = ${ORG}
        def stages = {
            stage("${org} create") {
                createOrg
            }
            stage("${org} test") {
                runTests
            }
        }
        stagesPerOrg[org] = stages;
    }
    parallel stagesPerOrg

0 个答案:

没有答案