我想使用TeamCity REST API按项目查询失败,错误和成功的构建。基本上我想在一个单独的应用程序中重新创建这个汇总:
有没有简单的方法可以做到这一点?我能得到的最接近的是这个查询,但它比给定构建配置的最新失败构建要多得多:
http://teamcity:8111/app/rest/builds/?locator=<project id locator>,status:failure
答案 0 :(得分:2)
REST API目前没有这样的方法,有两种选择:
1)使用一个HTTP请求全局请求构建配置列表,然后对于项目中的每个构建配置,您希望为每个构建配置提供最新的X
构建 - 在您的情况下X
是1使用
/httpAuth/app/rest/builds/?locator=buildType:BUILD_TYPE_ID&count=1
这将需要1 + N个HTTP请求,N是项目中构建类型的数量,并且始终是正确的。
2)执行类似于您已经在做的事情,然后解析响应,按构建类型ID分组并使用每个中的最新一个来执行汇总 - 如果它们不在,您可能会错过这里的构建前100个最新版本 - 您可以使用count=XXX
请求参数扩展搜索范围。
/httpAuth/app/rest/builds/?locator=project:(id:PROJECT_ID)&count=XXX
这将使用1个HTTP请求,但可能会遗漏旧版本
答案 1 :(得分:0)
使用最近的TeamCity版本(当然是9.1.1及更新版本),您可以获得所有失败的版本:
/httpAuth/app/rest/problemOccurrences?locator=affectedProject:<Project ID>,currentlyFailing:true
这将生成所有当前失败的构建及其构建ID的列表。然后你可以得到关于每个构建的详细信息:
/httpAuth/app/rest/builds/id:<Build ID>