В моем многоотраслевом конвейере Jenkins я хочу использовать следующий код в моем Jenkinsfile:
def props = [
parameters([
string(
defaultValue: "Value1",
name: 'VALUE_NAME',
description: 'Something'),
string(
defaultValue: "Value2",
name: 'VALUE_NAME_v2',
description: 'Something else')
])]
properties(props)
if(condition1) {
// remove only VALUE_NAME
}
Но как я могу удалить свойство VALUE_NAME только в том случае, если условие1 верно?
Я нашел только синтаксис:
props.removeAll { it.toString().contains('VALUE_NAME')}
^^ Это удаляет все параметры, даже если мои переменные не имеют имен с общим телом, как в этом примере ("VALUE_NAME").
И с этим синтаксисом после однократного запуска сборки я не вижу кнопку «Построить с параметрами» в пользовательском интерфейсе задания, но «Построить сейчас».