假设我通过向/job/awesomesauce/build
发送GET请求来触发构建。是否可以检索触发构建的ID?
我知道我可以尝试访问/job/awesomesauce/lastBuild/api/json
,但如果有多个构建同时运行,这会给我错误的信息。此外,在向我提供有关当前正在运行的构建的信息之前,似乎有轻微的延迟(几秒钟)。
答案 0 :(得分:4)
我必须做这种事情,这是我使用的一种解决方法:我有一个虚拟参数,我传递给构建(在我的情况下,它是另一个构建的BUILD_ID;在您的情况下,它可能是一个时间戳),然后我查询并解析了包含适当参数值的构建队列api([server]/queue/api/...
)和常规api(如果构建已完成)。
答案 1 :(得分:1)
在http响应标题“location”中,您可以获取队列项ID。然后你可以轮询/ queue / item // api / json来获取它的可执行文件号,即构建id。