在Jenkins中,现在我正在配置可以基于选择参数值运行的管道作业,对于每个选择值,都需要并行运行某些作业。例如,在这里我需要构建Job1参数,然后仅需要构建Job1的并行作业。但是我在这里尝试了它构建所有作业的方法,有没有一种方法可以基于参数值构建作业?
Choice Parameter
Name: Param
Value: Job1
Job2
import jenkins.model.*
import hudson.model.*
node('') {
String
stage ('Parallel-Job1'){
parallel(Job1: {
stage ('Parallel-test1'){
build job: 'test1', propagate: false
def jobname1 = "test1"
}
}, Job1: {
stage ('Parallel-test2'){
build job: 'test2', propagate: false
def jobname2 = "test2"
}
})
stage ('Parallel-Job2'){
parallel(Job2: {
stage ('Parallel-test3'){
build job: 'test3', propagate: false
def jobname1 = "test3"
}
})
}
}
}
答案 0 :(得分:1)
if (param == "Job1") {
stage('Parallel-Job1') {steps ..}
PA:在这种情况下,您不会在一般视图中看到跳过的管道阶段
或者:
stage('conditional stage') {
agent label:'my-node'
when {
expression {
return ${Param} != 'Job1';
}
}
steps {
echo 'foo bar'
}
}