4

我开始使用在 TeamCity 中具有自动构建的新代码库。依赖项在 TeamCity 配置中定义,该配置从其他构建中获取部分构建工件并将它们提取到正在构建的项目的“lib”子目录中。

在 TeamCity 中定义依赖项时,开发人员如何重现本地构建?有没有办法获取 TeamCity 构建的依赖项以在本地更新依赖项?

查看 TeamCity 的文档,该项目的配置似乎是设置依赖项目的预期方式(TeamCity 的一个功能)。但是,该项目的输出是 MSI。这通常分为两个单独的构建(一个创建包含构建依赖项和构建输出的构建输出,另一个获取这些工件并生成 MSI)?

我想要做的是正确更新我的本地机器的构建区域以具有正确的依赖关系。执行此操作的预期方法是什么?如果在 TeamCity 中定义了“规则”,我如何在本地使用它们?

更新:我正在考虑使用 TeamCity 作为 nuget 服务器,并让本地构建使用 nuget 客户端安装依赖库。如果 TeamCity 和项目中的依赖项被定义在一个地方(DRY),那就太好了。

4

1 回答 1

0

我的建议是:不要。

避免不必要地将自己与 TeamCity 耦合,除非它为特定任务提供真正的价值。如果您正在构建真正的软件包,即独立的、可重用的代码库,那么您最好将它们构建为单独的构建配置,然后将它们上传到 Nuget 服务器(TC 可以作为一个简单的服务器运行)。然后,您的本地构建将与 CI 构建相同,因为它使用 nugets 基础架构。

TC 依赖项是一个有用的工具,但也可能被误用和过度使用。请记住,TC 为许多平台提供 CI 服务器,其中一些平台没有包(或历史上没有)。

于 2015-12-16T19:03:48.863 回答