如何使用TeamCity Rest API将所有工件作为zip获取?

时间:2013-01-04 20:24:57

标签: teamcity teamcity-7.0

The Docs显示此

/repository/downloadAll/BUILD_TYPE_ID/BUILD_SPECIFICATION

将所有工件作为zip文件获取,但不使用REST API。 REST API中有没有办法做同样的事情?文档似乎表明存储库链接仅用于向后兼容。

3 个答案:

答案 0 :(得分:2)

您可以使用此网址,它适用于我:

http://<TeamcityUrl>/httpAuth/app/rest/builds/id:<BuildId>/artifacts/archived

我使用TeamCity 9。

答案 1 :(得分:1)

来自文档:http://confluence.jetbrains.net/display/TW/REST+API+Plugin#RESTAPIPlugin-buildartifacts

Artifacts:
GET <TeamcityUrl>/httpAuth/app/rest/builds/<buildLocator>/artifacts/files/<artifact relative name>
  

如果从TeamCity构建中下载工件,请考虑使用teamcity.auth.userId / teamcity.auth.password系统属性作为下载工件请求的凭据:这样TeamCity将有办法记录使用的一个构建另一个的工件,将在build的依赖选项卡上显示。

你试过这个吗?

答案 2 :(得分:1)

我不确定它是否已记录在案,但确实有效。

http://teamcity-url/downloadArtifacts.html?buildId=216886

如果您在.NET中使用它,则可以使用以下代码:

List<string> downloadedFiles = new RemoteTc()
     .Connect(a => a.ToHost("tc").AsGuest())
     .DownloadArtifacts(123, @"C:\DownloadedArtifacts");

以上代码使用FluentTc