我的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
我的谬误...请参阅我自己的解决方案答案。
答案 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'],
];
这应该有帮助