对于我们的企业应用程序,我们在AccuRev中有分层的流(开发人员提升到集成流,它提升到质量保证流,它提升到生产流)。应用程序的每个主要组件都有自己的分层流集合(例如: Windows客户端集成流、Windows客户端质量保证流、数据访问服务集成流、数据访问服务质量保证流等)。
我负责在TeamCity中为整个应用程序设置自动构建。到目前为止,我已经为每个主要组件创建了单独的构建配置(例如: Windows客户端构建配置)。现在,这些配置来自前面提到的集成流。它工作得很漂亮。
然而,我们想要做的是将构建配置切换为从不同的层拉出。换句话说,如果我们想要运行Windows客户端的“集成”构建,构建配置将从Windows客户端集成流中提取。然而,在质量保证构建的情况下,它将从质量保证流中提取。
据我所知,实现这一点的唯一方法是为每一层创建单独的构建配置(例如:"Windows客户端构建配置(质量保证)“)。
有没有更简单的方法?
或者,我设置自动构建的方式有没有根本上的错误,使我无法实现这一点?
发布于 2010-10-06 06:31:01
我没有使用过AccuRev,但我假设streams等同于其他版本控制系统中的分支。
我认为你在这一点上是正确的。每个层/平台都有单独的构建配置的好处是,一旦它们都设置好了,您只需单击一个按钮就可以构建其中的任何一个,而不需要进一步的配置。您可以在没有每个层单独的构建配置的情况下完成这项工作,但随后您将不得不处理构建配置或设置了特定属性的定制构建(不过,直接从TeamCity projects页面运行定制构建非常容易!)每次你想要构建的时候。
我可能要做的就是像您一样为每个平台/层设置单独的构建配置,并使用配置参数来处理平台和层的设置,并将它们全部基于单个模板。这为您提供了单独配置的好处(单击构建,如果需要,可以单独进行版本控制,等等)同时通过将配置隔离到模板来保持较低的复杂性和维护要求。
https://stackoverflow.com/questions/3867200
复制相似问题