TFS:构建具有多种配置的解决方案

时间:2014-07-18 07:24:26

标签: visual-studio visual-studio-2012 tfs team-build

场景:在TFS 2013上,我必须构建300多个项目(C#和VC ++),分为40个解决方案。有些项目有多个Release和Debug配置,例如一个项目可能有3个Release版本配置,如Release 1,Release 2,Release 3 | x86,Release 4 | x64等。

要求:我正在尝试找到TFS功能来构建具有Release配置的解决方案,它应该检测添加到该解决方案的项目中指定的所有Release Configuration,并构建所有配置。 (调试相同)。

问题:如果此功能不是内置的,我必须为这些功能自定义TFS构建定义,我应该在哪里添加这些功能?

2 个答案:

答案 0 :(得分:7)

在构建定义中,您可以指定要构建的平台和配置。打开构建定义,转到流程选项卡。

在此处输入要构建的解决方案,其中包含配置部分(02. Build on 2013),您可以在此处输入要构建的配置。

Platform / Configurations

答案 1 :(得分:1)

要从现有的.sln / .proj文件中收集信息,您有三种选择:

  1. 使用MSBuildEmitSolution技巧
  2. 使用一些不起眼的API
  3. 解析文件的文本
  4. 我会建议后者:它可能会破裂,但速度快且便宜(相信我,因为我尝试了所有这些)。

    您需要自定义构建模板。在TFS 2013默认模板(TfvcTemplate.12.xaml)中,MSBuild活动循环存储在ConfigurationsToBuild参数变量中的值。 因此,您应该添加一个步骤来扫描解决方案/项目文件(在构建定义中指定的文件),收集所需的配置值并将它们传递给MSBuild活动。

    要了解如何自定义模板,请查看ALM Rangers' guidance