2012-06-18 26 views
7

我想找出一種方法,從teamcity返回所有最後完成的構建。基本上,我正在爲teamcity創建一個狀態頁面,並希望顯示當前所有失敗的構建。到目前爲止,我已經嘗試過各種API調用。我認爲以下的API調用肯定會給我自上次成功構建以來的所有失敗,但似乎並不奏效。TeamCity - 您如何通過rest api獲取每個項目的最後完成版本列表?

/guestAuth /應用/ REST /建立/定位器=狀態:失敗,sinceBuild:(狀態:成功)

任何幫助將大大appriciated。如果我能完成所有最後完成的構建,我可以排序只顯示失敗。

回答

2

該REST調用是正確的。我正在使用TeamCity 7.1。難道你自從上次成功構建之後根本沒有失敗?嘗試反轉的條件:

/guestAuth /應用/ REST /建立/定位器=狀態:成功,sinceBuild:(狀態:失敗)

這將返回一個列表,因爲成功建立最後的失敗(相反)。如果您使用此查詢得到結果,那麼您的查詢應該不會返回結果。 。換句話說,這兩個查詢:

/guestAuth /應用/ REST /建立/定位器=狀態:失敗,sinceBuild:(狀態:成功) /guestAuth /應用/ REST /建立/定位器=狀態:成功,sinceBuild:(狀態:失敗)

在任何給定的時間,因爲有已完成的生成,每個人都應該返回零構建和其他應始終返回一個或多個版本。

+1

這個條件會發生什麼,如果所有的構建持續成功或持續失敗。 – RinoTom

+0

在TeamCity 8.1中這些工作都不適用於這兩個請求,即使我已經構建了以前失敗但現在成功的構建,並且構建了之前成功但現在失敗的構建。 – ninesided

+0

他們都在TeamCity 9.1.4上正常工作 – Txugo

2

據對this JetBrains' ticket評論,因爲TeamCity的8.1,可以使用此API調用來獲取最新版本狀態的所有項目下建造的配置:

http://teamcity.jetbrains.com/app/rest/buildTypes?locator=affectedProject:(id:TeamCityPluginsByJetBrains)&fields=buildType(id,name,builds($locator(running:false,canceled:false,count:1),build(number,status,statusText))) 
相關問題