如何檢查哈德森是否忙?含義我想檢查它當前是否執行任何構建或不。
如何檢查哈德森是否忙?
目前正在使用以下的事情:
if(lastBuild == lastCompletedBuild){
// hudson is free
}
else{
//hudson is busy
}
這是一個正確的邏輯是什麼?如果在上次構建更新並且lastCompletedbuild不是?後機器重新啓動/崩潰?
有任何暴露的API,它可以直接使用?
如何檢查哈德森是否忙?含義我想檢查它當前是否執行任何構建或不。
如何檢查哈德森是否忙?
目前正在使用以下的事情:
if(lastBuild == lastCompletedBuild){
// hudson is free
}
else{
//hudson is busy
}
這是一個正確的邏輯是什麼?如果在上次構建更新並且lastCompletedbuild不是?後機器重新啓動/崩潰?
有任何暴露的API,它可以直接使用?
具體做法是:你可以在哈德森添加任何路徑來獲取頁面的機器可讀數據。例如hudsonserver:8080/api/xml
將返回作業列表及其當前狀態。
然而,真正的問題,我這是哪裏的代碼被執行?以上,你有lastBuild
和lastCompletedBuild
,但是這些變量是從哪裏設定的?
I通過調用api來獲取值:http://hudson.server.com/job/myjobname/api/xml以及標記lastBuild&lastCompletedBuild的值 – akshay
如果你想看到的是目前在構建隊列什麼物品,就可以使http://your.hudson.server/hudson/queue/api/[xml|json]
的請求。
你可以嘗試查詢負荷統計可在separate API:
<overallLoadStatistics>
<busyExecutors></busyExecutors>
<queueLength></queueLength>
<totalExecutors></totalExecutors>
<totalQueueLength></totalQueueLength>
</overallLoadStatistics>
您是否有興趣在一個特定的作業是否目前正在建設?在這種情況下:
http://[hudson-host-and-path]/job/[job-name]/lastBuild/api/xml
有標籤<building>
設置爲真正如果構建正在發生的事情。
您需要添加更多相關標籤。我甚至不知道哈德森是什麼,如果它與Java有關,那麼將java標籤添加到您的文章中。沒有相關標籤的用戶將無法找到您的信息。 – Caimen
@Caimen:退房哈德森@ http://hudson-ci.org/ – akshay
我假設你正在編寫Java代碼,所以我添加Java代碼到您的文章。然而,僅僅因爲你試圖檢測Hudon的狀態並不一定意味着你正在編寫java。細節...我們需要他們。 – Caimen