如何使用其他构建作业的参数?

问题描述 投票:0回答:3

我的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 我的谬论......请看我自己的解决方案的答案。

jenkins jenkins-pipeline
3个回答
0
投票

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


0
投票

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

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


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

    ];

这应该会有所帮助

© www.soinside.com 2019 - 2024. All rights reserved.