在Groovy脚本中访问扩展选择参数脚本插件参数

时间:2016-03-11 20:01:54

标签: json jenkins groovy jenkins-plugins

我使用了Extended Choice Parameter Script plugin并使用Array类型创建了一个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.instance 1等。

只是执行println params["ServerUrls"]会抛出异常。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

有效。解决方案如下所示,它以字符串格式返回值为JSON。解析JSON以获取它的内部结构应该相当容易。

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

println hardcoded_param_value