获取当前 运行 jenkins 构建及其参数的列表

Get a list of currently running jenkins builds with their parameters

我正在使用 groovy 编写管道作业。我需要获取关于同一作业的 运行 个构建的信息,以及构建的参数和它们的 ID,这样我以后可以按参数

过滤它

我发现这些问题是如何实现的

From Jenkins, how do I get a list of the currently running jobs in JSON?

How do I Efficiently list **All** currently running jobs on Jenkins using Groovy

并且提议的解决方案 return 有关工作的信息,但是它们 return 结果太多(不仅是活跃的工作)并且还有其他问题

例如 http://jenkins.example.com/api/xml?tree=jobs[name,url,color]&xpath=/hudson/job[ends-with(color/text(),%22_anime%22)]&wrapper=jobs 没有 return 任何关于构建的信息

到目前为止最接近的猜测是 https://jenkins.example.com/api/xml?tree=jobs[name,status,id,result,builds[number,actions[parameters[name,value]]]]&xpath=/hudson/job[name="job_name"]&wrapper=job_names&pretty=true,但它 return 只丢失了 action 项并且没有指出哪些构建是活动的

感谢任何帮助实现我想要的东西。首选输出是 JSON

尝试以下 API:

https://jenkins_domain/job/test_job/api/json?tree=builds[id,building,actions[parameters[name,value]]]

但是您不能真正过滤结果,因为 JSON API

不支持 XPath