2013-12-21 50 views
2

使用TeamCity的8.0.4(27616建)TeamCity的REST API来获取列表打破目前项目

我用我的TeamCity服务器调用获得的破列表构建:

http://teamcity.exactbid.net/guestAuth/app/rest/builds/?locator=status:failure,sinceBuild:(status:success)

如果我的项目处于失败状态,那么该API调用将返回count = 1以及已损坏项目的详细信息。

问题是如果该项目有一个当前正在运行的版本,API调用返回计数0,并且没有项目在损坏列表中。

只要项目建设完成(和休息再次)计数追溯到1

所以希望有东西在我的定位查询,我可以改变来获得破构建即使他们目前正在建设。

TC ui似乎知道它,因为我破碎的项目的父项目都显示红色。只是不确定如何在API查询中正确使用它。

回答

3

尝试加入running:any。也许running默认为false,虽然我在documentation中找不到那个。

2

这里是如何显示的故障列表构建:

http://teamcity.exactbid.net/guestAuth/app/rest/builds/?locator=status:failure 

失败的版本是建立那些已经完成,失败了,那么我认为你正在寻找的是显示的方式建立运行和失败:

http://teamcity.exactbid.net/guestAuth/app/rest/builds/?locator=status:error,status:running 

这看起来对于建立运行和包含错误(这导致构建失败,除非明确告知不能)

您可能^ h AVE使用两个REST API调用来获得该版本:

  1. 你是在指出正确的,是成品,未能
  2. 运行和失败
+0

,我不是在寻找所有的过去破碎的构建。也许我应该重新说一下我的问题单词,说明我正在寻找一个项目列表,列出最后完成的构建已经破坏。所以如果ProjectA的最后一个完成的构建破坏了,但它的构建正在运行,我仍然希望ProjectA被列出。我想你是对的,我可能需要做两个或更多的REST调用来计算这些信息。 – slolife

+0

可能想更改问题的标题以获得更好的答案。 下面是一些伪代码,可以帮助您完成: 循环遍历TC服务器上的每个构建配置; 检查上一个版本的状态; 保存失败的构建列表; 显示失​​败的版本 – ShaneC

+1

注意:要做一个状态定位器有多个值,请使用格式'?locator = status:(error,running)' –