如何将Groovy变量用于扩展选择Jenkins插件



我想将Groovy变量用作扩展选择插件的值。似乎很琐碎,但不起作用 - " groovy.lang.missingpropertyexception:no这样的属性:$ components_list for Class:groovy.lang.binding"。

有什么想法?

environment {
    COMPONENTS_LIST= "one two three"
}
parameters {
    extendedChoice (description: 'Components', multiSelectDelimiter: ' ', 
    name: 'Components_To_Deploy', quoteValue: false, saveJSONParameterToFile: false, type: 'PT_MULTI_SELECT', 
    value: $COMPONENTS_LIST, visibleItemCount: 3)
}

这是一个语法错误,您正在尝试将命名参数value设置为变量$COMPONENTS_LIST的内容;它不存在。也存在变量范围的问题。这两个封闭都需要可用。因此,尝试使用所需的值来定义两个闭合范围之外的变量,然后使用闭合内的变量,如以下示例:

def componentsList = "one two three"
environment {
    COMPONENTS_LIST = componentsList
}
parameters {
    extendedChoice (description: 'Components', multiSelectDelimiter: ' ', 
    name: 'Components_To_Deploy', quoteValue: false, saveJSONParameterToFile: false, type: 'PT_MULTI_SELECT', 
    value: componentsList, visibleItemCount: 3)
}

我认为这是语法问题。您必须使用双引号来引用您的变量:

def COMPONENTS_LIST= "one two three"
parameters {
    extendedChoice (description: 'Components', multiSelectDelimiter: ' ', 
    name: 'Components_To_Deploy', quoteValue: false, saveJSONParameterToFile: false, type: 'PT_MULTI_SELECT', 
    value: "${COMPONENTS_LIST}", visibleItemCount: 3)
}

最新更新