Как строить конвейерные задания параллельно на основе значений параметров выбора?

В 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"
    }
})
}
}
}

Всего 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'
}

}


Есть идеи?

10000