[英]How can I get the final status of a completed Jenkins job via API?
我撥打電話如下:
並獲得如下結果:
{
"builds": [{
"actions": [{
"parameters": [{
"name": "JT_BUILD_ID",
"value": "1274"
}]
}, {}, {}, {}, {}],
"number": 3,
"result": "SUCCESS"
}, {
"actions": [{
"parameters": [{
"name": "JT_BUILD_ID",
"value": "1273"
}]
}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}],
"number": 2,
"result": "SUCCESS"
}, {
"actions": [{
"parameters": [{
"name": "JT_BUILD_ID",
"value": "0"
}]
}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}],
"number": 1,
"result": "SUCCESS"
}]
}
我正在傳遞JT_BUILD_ID,所以我可以匹配MYJOB的這個運行。
當我找到匹配的JT_BUILD_ID時,我看結果,當我看到SUCCESS時,我認為我已經完成了。 但是這項工作仍在運行,以發布構建行動。
我怎樣才能匹配構建實例(使用參數JT_BUILD_ID)並檢測作業的最終狀態?
在building
下還有另一個關鍵builds
,如果builds
后仍在工作,狀態將保持為true
。 當工作完全完成時,它變為false
。
因此,您可以為building == false
添加額外的檢查,最終的URL如下所示
如果最新版本正在進行(在構建后階段),結果可能如下所示
{
"builds": [{
"actions": [{
"parameters": [{
"name": "JT_BUILD_ID",
"value": "1274"
}]
}, {}, {}, {}, {}],
"building" : true,
"number": 3,
"result": "SUCCESS"
}, {
"actions": [{
"parameters": [{
"name": "JT_BUILD_ID",
"value": "0"
}]
}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}],
"building" : false,
"number": 1,
"result": "SUCCESS"
}]
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.