【发布时间】:2020-02-07 10:50:31
【问题描述】:
我有两个 Jenkins 流水线:
- 流水线 A:在一个阶段,我定义了一个名为 MAVEN_PROFILE 的环境变量(用户可以从列表中选择一个值)
- 管道 B:我需要获取在管道 A 中设置的 MAVEN_PROFILE 环境变量值
我需要两个管道,因为出于流程原因,我无法在单个管道中执行此操作。
我看到有一些关于如何在单个管道中的阶段之间共享变量的答案,但这不是我的情况。
我想在不同的管道之间共享环境变量值。
管道 A
pipeline {
agent any
...
stages {
stage('Profile Selection'){
steps {
script {
env.MAVEN_PROFILE = input message: 'Choose the profile :',
parameters: [choice(name: 'MAVEN_PROFILE',
choices: 'all\nserver\nclient', description: 'Profiles')]
}
}
}
stage(...){
steps {
script {
bat "mvn deploy -P ${env.MAVEN_PROFILE}"
}
}
}
... other stages
}
}
管道 B
pipeline {
agent any
...
stages {
... other stages
stage(...){
steps {
script {
bat "mvn release ... -P ${env.environmentVariableValueFromPipelineA}"
}
}
}
}
}
【问题讨论】:
标签: jenkins jenkins-declarative-pipeline