如何使用另一个构建作业中的参数?

时间:2019-03-07 14:35:15

标签: jenkins jenkins-pipeline

我的Jenkins管道包含调用另一个构建作业,如下所示:

pipeline {
    agent any
    stages {
        stage('Deploy') {
            when {
                branch 'develop'
            }
            steps {
                build job: 'deploy-to-develop-stack', parameters: [string(name: 'STACK_NAME', value: "develop-stack")]
            }
        }    
    }
}

下游作业已启动,但是我不知道它如何访问参数STACK_NAME

我尝试使用$STACK_NAME${STACK_NAME},但是这些都不起作用。

如果启用“此项目已参数化”,它将起作用,但这将要求用户避免输入,因为该参数应从另一个管道脚本中传入。

更新#1
我的谬误...请参阅我自己的解决方案答案。

3 个答案:

答案 0 :(得分:0)

我只是一个谬论。激活“此项目已参数化”是方法。如果参数是从另一个管道传递的,则当然不要求用户输入。

答案 1 :(得分:0)

您可以使用Parameterized Trigger Plugin,它将使您将参数从一个任务传递到另一任务。

您还需要在下游添加从上游传递的参数

答案 2 :(得分:-1)

  build job: "deploy-to-develop-stack",
    parameters: [
      [$class: 'StringParameterValue', name: 'STACK_NAME', value: "develop-stack", description: 'develop-stack'],

    ];

这应该有帮助