如何在Jenkins中将参数从管道作业传递到maven作业

时间:2017-02-22 11:08:08

标签: jenkins groovy jenkins-pipeline jenkins-job-dsl

我有一个管道工作和两个Maven工作,如下所示。

    node {
    def res
    stage('Build') {
        node('rhel6') {
            res = build job: "Build", parameters:
                                [
                                        string(name: 'jobname', value:'master'),
                                        string(name: 'val1', value: 'MyValue')
                                ]
        }
    }
    stage('Deploy') {
        node('rhel6') {
            build job: 'Deploy', parameters:
                    [
                            string(name: 'resName', value: "$res.buildVariables.filename")
                            string(name: 'firstVal', value: 'First_Argument')
                    ]
        }
    }
}

从我的管道定义中可以看出,我有一个管道作业,并且在管道阶段运行了两个作业。 “Build”作业需要两个字符串参数和构建。

部署作业从Build作业和构建中获取一个输入。

1)这是在jenkins管道中的阶段之间传递参数的正确方法吗?我使用的方法类似于this

2)管道作业中的参数如何映射到实际作业中的参数? 例如:在上面的管道作业中,在'Build'阶段,我有jobname和val1作为参数。这些参数如何映射到Build作业中的实际参数?

3)如何从作业dsl脚本自动生成此管道作业?我的意思是,如何在Jenkins中生成上面的管道?

0 个答案:

没有答案