【发布时间】:2023-03-25 13:10:02
【问题描述】:
我们正在向 Jenkins 作业发送不同的参数,其中包括 Git 提交 SHA1。我们想要获取使用该参数值的作业列表(Git SHA1 - 哪些作业运行了此提交?)。
以下 URL 将为我们提供所有构建:
http://jenkins.example.com/api/json?tree=jobs[name,builds[number,actions[parameters[name,value]]]]&pretty=true
渲染需要一些时间(6 秒)并且包含太多构建(5 MB 构建)。
来自该 URL 的示例输出:
{
"jobs" : [
{
"name" : "Job name - Build",
"builds" : [
{
"actions" : [
{
"parameters" : [
{
"name" : "GIT_COMMIT_PARAM",
"value" : "5447e2f43ea44eb4168d6b32e1a7487a3fdf237f"
}
]
},
(...)
我们如何使用 Jenkins JSON API 列出所有具有特定构建参数值的作业?
【问题讨论】:
-
/api/json?tree=jobs不要遍历文件夹,如果您有文件夹,则需要为显示的每个文件夹运行一次休息调用。只需获取为每个文件夹返回的 url 并添加/api/json?tree=jobs -
这个 API 在任何地方都有文档吗?我好像没找到。