Наша установка Jenkins состоит из главных узлов и различных / выделенных рабочих узлов для выполнения заданий в среде dev, test и prod.Как мне создать сценарий конвейерного кода, который позволяет пользователям выбирать среду (возможно, из главного узла) и в зависимости от выбранной среды выполнять оставшуюся часть работы в выбранном узле?Вот моя первоначальная мысль:
stage('Select environment ') {
script {
def userInput = input(id: 'userInput', message: 'Merge to?',
parameters: [[$class: 'ChoiceParameterDefinition', defaultValue: 'strDef',
description:'describing choices', name:'Env', choices: "dev\ntest\nprod"]
])
println(userInput);
}
echo "Environment here ${params.Env}" // prints null here
stage("Build") {
node(${params.Env}) { // schedule job based upon the environment selected earlier
echo "My test here"
}
}
}
Я нахожусь на правильном пути или я должен смотреть на что-то еще?
Еще один дополнительный вопрос заключается в том, что задание выполняется на работнике.узел также требует дополнительного пользовательского ввода.Есть ли способ объединить пользовательский ввод за один раз, чтобы пользователям не предлагалось отображать несколько пользовательских экранов?