3
我打個電話,如:如何通過API獲取完成的Jenkins作業的最終狀態?
,並得到這樣的結果:
{
"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時,我看結果,當我看到成功時,我認爲我完成了。但這項工作仍在繼續發佈構建操作。
我該如何匹配構建實例(使用參數JT_BUILD_ID)並檢測作業的最終狀態?
你對API使用哪種腳本? javascript/python? 「如何通過JT_BUILD_ID」直接在API中提問? –
只是在python(沒有庫,只是原始代碼) 像: /job/MYJOB/buildWithParameters?delay = 0sec&token = XBUILD&JT_BUILD_ID = 1276 – pbx
在你的情況下,爲什麼不使用if語句來檢查?讓我們假設json_result在字符串之上,build_no是你想要的。然後'filter(lambda x:x [「actions」] [0] [「parameters」] [0] [「name」] =='JT_BUILD_ID'and x [「number」] == build_no,json_result [「builds」 ])' –