TeamCity 是否支持执行其他 TeamCity 构建的构建步骤?

Does TeamCity support build steps that execute other TeamCity builds?

使用 TeamCity,我在一个项目中设置了多个构建。大多数时候,我想 运行 每个构建都是独立的。但是,有时我想使用同一组参数执行多个构建。这些构建都使用相同的模板,因此从理论上讲,它们的所有参数都可以由单个构建提供。

我在文档中找不到任何说明这是可能的,但似乎应该是这样。 (搜索 "execute builds from another build in teamcity" 为我提供了大量关于构建依赖项的文档,但不是我要找的)

我知道我可以手动将我的所有构建排队,但每次都需要重新输入相同的参数。

TeamCity 是否支持执行其他 TeamCity 构建的构建步骤?如果是,如何?

不完全是。但是,在 TeamCity 中,您可以通过添加快照依赖项来拥有构建链(构建调用其他依赖构建)。

如果您在另一个构建配置上添加快照依赖项,那么您可以访问其所有定义的参数,甚至源代码和工件。

我通过调用 TeamCity REST 来实现这一点 API:

  1. 在构建结束时使用命令行运行程序添加一个新步骤

  2. 做curl

    curl -X POST -H “授权:Bearer %TeamCityToken%”
    --header“内容类型:application/xml”
    -d” <属性 name="tag" value="%NewVersion%"/> "
    http://teamcity.example.com/app/rest/buildQueue

您需要更改:

TeamCityToken 到您的访问令牌,请参考此页面创建一个:https://www.jetbrains.com/help/teamcity/rest/teamcity-rest-api-documentation.html#REST+Authentication

构建类型 ID“远程部署”到您的构建类型 ID。

属性随心所欲。

当然,团队城市 url。