Мы используем подключаемый модуль блокируемых ресурсов для предотвращения наши рабочие места выполняются одновременно. Я хотел бы разрешить запуск задания и сбор входных параметров с помощью «Шага ввода», затем поставить в очередь, ожидая снятия блокирующих блокировок, а затем продолжить. Вместо этого я вижу, что вся работа блокируется и не позволяет мне вводить данные до тех пор, пока все блокировки не будут сняты, даже если у меня есть шаг ввода за пределами блока Lock.
Что я делаю неправильно?
Вот пример:
// Define an input step and capture the outcome from it.
def outcome = input id: 'deployment',
message: 'Deployment Configuration',
ok: 'Deploy',
parameters: [
[
$class : 'hudson.model.ChoiceParameterDefinition', choices: "development",
name : 'stack',
description: 'select a stack to deploy'
],
[
$class : 'hudson.model.ChoiceParameterDefinition', choices: "choice1\nchoice2",
name : 'profile',
description: 'select a profile to deploy'
],
]
def profile = "${outcome.get('profile')}"
def stack = "${outcome.get('stack')}"
echo "profile: ${profile}"
echo "stack: ${stack}"
// use lockable resource to prevent multiple jobs of the same project from running at the same time.
lock(resource: "deployment") {
sh "echo running deployment script here."
}