1

我正在编写一个 Jenkins 插件,我想从 Jenkins API 检索给定作业的最后构建信息(编号、时间戳、构建参数)。我可以使用jenkins_api_client (ruby gem) 和 REST 调用来做到这一点并获取它。

<url_to_jenkins>job/<job name>/api/json?pretty=true&tree=builds[actions[parameters[name,value]],id,number]

这是我得到的输出:

"{""builds""=>
[{""actions""=>
[{""parameters""=>
[{""name""=>""BUILD"", ""value""=>""APACHE""}, 
{""name""=>""CLIENT"", ""value""=>""GOOGLE""}]}, {}, {}, {}, {}], 
""id""=>""2013-03-09_07-36-49"", 
""number""=>18}]}"

我怎样才能得到BUILD和价值,CLIENT即在红宝石中?APACHEGOOGLE

4

2 回答 2

1

我没有测试过,但你需要json,这是答案的格式。

require 'json'

reply = "{""builds""=>
[{""actions""=>
[{""parameters""=>
[{""name""=>""BUILD"", ""value""=>""APACHE""}, 
{""name""=>""CLIENT"", ""value""=>""GOOGLE""}]}, {}, {}, {}, {}], 
""id""=>""2013-03-09_07-36-49"", 
""number""=>18}]}".replace('=>', ':')

my_hash = JSON.parse(reply)
puts my_hash['builds'] # access the content and further. you can do that.
于 2013-06-22T09:04:03.543 回答
0

如果您缺少 jenkins_api_client ruby​​gem 中的功能,请打开带有详细描述的问题,我会尽快实现。

谢谢, Kannan(jenkins_api_client 的作者)

于 2013-06-22T07:45:56.743 回答