从外部服务调用设置Jenkins参数

时间:2018-01-24 23:31:02

标签: jenkins continuous-integration jenkins-pipeline

假设:

网络服务。

该服务具有端点/info

GET返回JSON:

{
  "displayName":"Info Service",
  "version":"961-830ae2c9",
  ...
}

当触发Jenkins作业时,我们需要调用/info,获取version的值并将其设置为构建的参数VERSION。

我希望能够像其他任何Jenkins参数一样使用VERSION:${VERSION}

1 个答案:

答案 0 :(得分:0)

找到适合我的解决方案:

  1. 通过选中"此项目已参数化" 复选框,使作业参数化。
  2. 添加"扩展选择参数"
  3. 设置参数如下所示 enter image description here
  4. 这是图片中的Groovy脚本:

        def version = new groovy.json.JsonSlurper().parse(new URL("https://test.xxxx.com/info")).version
        return [version]
    

    现在您可以使用${VERSION}