代码之家  ›  专栏  ›  技术社区  ›  attack

具有多种开发环境的TeamCity

  •  0
  • attack  · 技术社区  · 14 年前

    对于我们的企业应用程序,我们在AccuRev中有分层流(开发人员提升到集成流,这提升到质量保证流,这提升到生产流)。应用程序的每个主要组件都有自己的分层流集(例如:有一个Windows客户端集成流、一个Windows客户端质量保证流、一个数据访问服务集成流、一个数据访问服务质量保证流等)。

    我负责在TeamCity中为整个应用程序设置自动构建。到目前为止,我已经为每个主要组件创建了一个单独的构建配置(例如:Windows客户端构建配置)。现在,这些配置从前面提到的集成流中提取。它工作得很好。

    但是,我们要做的是将构建配置切换为从不同的层提取。换句话说,如果我们想要运行Windows客户机的“集成”构建,则构建配置将从Windows客户机集成流中提取。但是,在质量保证构建的情况下,它将从质量保证流中提取。

    1 回复  |  直到 14 年前
        1
  •  1
  •   Marty    14 年前

    我没有使用AccuRev,但我假设流与其他版本控制系统中的分支等效。

    我觉得你走对了。为每个层/平台提供单独的构建配置的好处是,一旦所有配置都设置好了,您可以单击按钮构建其中的任何一个,而无需进一步配置。您可以在没有为每一层单独的构建配置的情况下完成这项工作,但随后您必须处理构建配置或具有特定属性集的自定义构建(不过,直接从TeamCity项目页面运行自定义构建非常容易!)每次你想做一个构建。

    我可能要做的是像您所做的那样为每个平台/层设置单独的构建配置,并使用配置参数处理平台和层的设置,将它们全部基于单个模板。这为您提供了各个配置的好处(如果需要,单击构建、单独的版本控制等),同时通过将配置隔离到模板来降低复杂性和维护需求。