TeamCity REST API以获取当前已中断的项目列表

TeamCity REST API以获取当前已中断的项目列表,teamcity,teamcity-8.0,Teamcity,Teamcity 8.0,使用TeamCity 8.0.4(构建27616) 我使用对TeamCity服务器的调用来获取已中断构建的列表: http://teamcity.exactbid.net/guestAuth/app/rest/builds/?locator=status:failure,自构建之日起:(状态:成功) 如果某个项目处于失败状态,则该API调用将返回count=1和已损坏项目的详细信息 问题是,如果该项目具有当前正在运行的构建,则API调用将返回计数0,并且在断开的列表中没有项目 一旦项目构建完成(

使用TeamCity 8.0.4(构建27616)

我使用对TeamCity服务器的调用来获取已中断构建的列表:

http://teamcity.exactbid.net/guestAuth/app/rest/builds/?locator=status:failure,自构建之日起:(状态:成功)

如果某个项目处于失败状态,则该API调用将返回count=1和已损坏项目的详细信息

问题是,如果该项目具有当前正在运行的构建,则API调用将返回计数0,并且在断开的列表中没有项目

一旦项目构建完成(并再次中断),计数将返回到1

所以,希望在我的定位器查询中有一些东西,即使它们当前正在构建,我也可以更改以获得损坏的构建


tcui似乎知道这一点,因为我的坏项目的父项目都显示为红色。只是不确定如何在API查询中获得正确的结果。

尝试添加
running:any
。可能
running
默认为
false
,但我在中找不到它。

以下是如何显示失败生成的列表:

http://teamcity.exactbid.net/guestAuth/app/rest/builds/?locator=status:failure
失败的构建是指已经完成并失败的构建,我认为您正在寻找的是一种显示正在运行和失败的构建的方式:

http://teamcity.exactbid.net/guestAuth/app/rest/builds/?locator=status:error,status:running
这将查找正在运行且包含错误的生成(导致生成失败,除非明确告知不要这样做)

您可能需要使用两个REST API调用来获取构建:

  • 已经完成并且失败了
  • 它们正在运行和失败

  • 您指出的是正确的,我并不是在寻找过去所有已损坏的构建。也许我应该改写我的疑问词,说明我正在寻找一个项目列表,该列表包含上一次完成的构建中断的项目。所以,如果ProjectA上一次完成的构建失败了,但有一个构建正在运行,我仍然希望ProjectA被列出。我想你是对的,我可能需要做两个或更多的REST调用来计算此信息。可能需要更改问题的标题以获得更好的答案。这里有一些伪代码可以帮助您度过难关:循环遍历TC服务器上的每个构建配置;检查上次生成的状态;保存失败构建的列表;显示失败的构建注意:要使用多个值执行状态定位器,请使用格式
    ?locator=status:(错误,正在运行)