【问题标题】:Groovy & Jenkins - capture curl output to a fileGroovy 和 Jenkins - 将 curl 输出捕获到文件
【发布时间】:2017-07-11 01:13:38
【问题描述】:

我想在 Jenkins 中填写一个动态参数框。

我的 Groovy 脚本应该执行以下操作:

  1. 在文件中收集 JSON 输出。
  2. 解析 JSON 输出以获得一些特定值。
  3. 在 Jenkins 的动态参数列表中显示这些值,以便从中选择一个。

你能帮我写一下 Groovy 脚本吗?不知道 Groovy :-(。

谢谢!

【问题讨论】:

标签: jenkins groovy


【解决方案1】:

您不必将 JSON 数据写入文件即可实现此目的。

Perfectly working curl command fails when executed in a groovy scriptParsing and producing JSON, 1. JsonSlurper 为基础,在动态参数的脚本中执行以下操作:

import groovy.json.JsonSlurper

url= "http://user:pwd@jenkins/api/json"
process = [ 'bash', '-c',  "curl ${url}" ].execute()
process.waitFor()
//println process.err.text  // for debugging in Jenkins' Script Console
//println process.text
info = new JsonSlurper().parseText(process.text)
return info._class

使用参数构建处的输出:

此构建需要参数:

动态参数hudson.model.Hudson

【讨论】:

    猜你喜欢
    • 2012-11-23
    • 2020-02-28
    • 1970-01-01
    • 2014-11-22
    • 1970-01-01
    • 1970-01-01
    • 2019-04-19
    • 1970-01-01
    • 2011-04-28
    相关资源
    最近更新 更多