通过REST Call启动TeamCity Build

ZaC*_*ter 11 teamcity

一点背景.

在我的环境中,我们在他们自己的Subversion存储库(500+)中有大量的小型.NET解决方案.我们不是TFS商店,目前正在评估将我们的本土CI过程转移到TeamCity.

而不是让这些500+ repos每5-10分钟左右轮询我们的Subversion服务器,我想通过post-commit-hook REST http调用启动Project build(就像我们当前的解决方案那样).然后,我希望TeamCity从SVN更新并开始构建过程.这可能吗?

我看到TeamCity有一个REST API,只是文档很稀疏.我不确定这个例子与我配置的任何东西有什么联系.什么是bt7?它与我配置的项目有什么关系?

http://buildserver:8111/httpAuth/action.html?add2Queue=bt7 
Run Code Online (Sandbox Code Playgroud)

Mik*_*Two 5

bt7是构建类型标识符.每个构建配置都有一个.您可以使用其余api获取完整列表,如下所示

http://buildserver:8111/httpAuth/app/rest/buildTypes
Run Code Online (Sandbox Code Playgroud)

如果单击团队城市页面上的任何构建配置,也可以在URL中看到构建类型.您将看到一个url参数,例如buildTypeId = bt7


Jes*_*ebb 2

bt7 是您的buildTypeId,它是每个构建配置(作业)的唯一 ID。每个项目可以有许多构建配置。

如果您单击进入一个项目,然后单击进入特定的构建配置,您的 URL 将类似于...

http://teacmtiyserver/viewType.html?buildTypeId=bt208

如果您想要将构建配置排队以运行,只需buildTypeId通过查看 URL 找出它,然后您可以尝试通过点击您使用的 URL 来运行它。