Реализация параметра расширенного выбора - PullRequest
0 голосов
/ 31 января 2019

Я создаю новую работу, в которой мы должны выбрать несколько значений.Необходимо выбрать Service1 и Service2 ... Прошел по ссылке Как передать параметр множественного выбора значения в файле Jenkins (Groovy) Однако я не уверен, как передать значения в моем Jenkinsfile

Фрагмент Jenkinsfile

stage('parallel'){

                parallel( 

                    "service1": {stage('service1-deployment') {
                     if (params.ServiceName == 'Service1' || params.ServiceName == 'ALL'){  
                        b = build(job: 'job name', parameters: [string(name: 'ENVIRONMENT', value: TARGET_ENVIRONMENT),string(name: 'IMAGE_TAG', value: value)], propagate: false).result
                        if(b=='FAILURE'){
                                echo "job failed"
                                currentBuild.result = 'UNSTABLE'
                            }
                    }       
                }
            },  



                "service2": {stage('service2t') {
                     if (params.ServiceName == 'service2' || params.ServiceName == 'ALL'){  
                        b = build(job: 'Job name', parameters: [string(name: 'ENVIRONMENT', value: TARGET_ENVIRONMENT),string(name: 'IMAGE_TAG', value: value)], propagate: false).result
                        if(b=='FAILURE'){
                                echo "job failed"
                                currentBuild.result = 'UNSTABLE'
                            }
                    }       
                }   
            },

1 Ответ

0 голосов
/ 31 января 2019

Я вижу, что вы используете декларативный конвейер синтаксис для вашей работы.

Итак, если принят ответ для этого вопроса с booleanParam полезно для вас, тогда вы можете использовать его в разделе parameters (подробности см. в официальной документации ):

pipeline {
    agent any
    parameters {

        booleanParam(defaultValue: false, name: 'ALL', description: 'Process all'),
        booleanParam(defaultValue: false, name: 'OPTION_1', description: 'Process option 1'),
        booleanParam(defaultValue: false, name: 'OPTION_2', description: 'Process options 2'),

    }
    stages {
        stage('Example') {
            steps {
                echo "All: ${params.ALL}"

                echo "Option 1: ${params.OPTION_1}"

                echo "Option 2: ${params.OPTION_2}"
            }
        }
    }
}

Однако, если вы хотитеиспользуйте параметр расширенного выбора с множественным входом, вам нужно использовать сценарий конвейера синтаксис, см. этот пример (уже упоминалось здесь ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...