Доступ к параметрам подключаемого модуля Extended Choice Parameter Script в сценарии Groovy

Я использовал плагин Extended Choice Parameter Script и создал редактор JSON с типом массива, как показано ниже:

disable_edit_json: true,
disable_properties: true,
disable_collapse: true,
theme: "jqueryui",
iconlib:"fontawesome4",
schema: {
    "type": "object",
    "title": "instances",
    "properties": {
        "instance": {
            "type": "array",
            "propertyOrder" : 1,
            "format": "table",
            "uniqueItems": true,
            "items": {
                "title": "instance",
                "type": "object",
                "properties": {
                    "url": {
                        "type": "string"
                    }
                }
            }
        }

    }
}

Имя параметра — «ServerUrls». Используя это, я могу передать один или несколько URL-адресов моему заданию Jenkins, и я хочу знать размер массива и получить доступ к каждому из этих значений параметров из скрипта Groovy. Концептуально что-то вроде ServerUrls.instance[0], ServerUrls.instance1 и т. д.

Просто выполнение println params["ServerUrls"] вызывает исключение.

Может кто-нибудь помочь?


person naspras    schedule 11.03.2016    source источник


Ответы (1)


Это сработало. Решение приведено ниже и возвращает значение в виде JSON в строковом формате. Должно быть довольно легко разобрать JSON, чтобы получить его внутренности.

def hardcoded_param = "ServerUrls"
def resolver = build.buildVariableResolver
def hardcoded_param_value = resolver.resolve(hardcoded_param)

println hardcoded_param_value
person naspras    schedule 11.03.2016