Msbuild teamcity构建模板,具有可选的构建步骤参数

Msbuild teamcity构建模板,具有可选的构建步骤参数,msbuild,teamcity,Msbuild,Teamcity,我有一个构建模板,配置了5个参数,比如配置、msdeploy artefact打包的PublishProfile。我的问题是,当我使用模板时,我不希望每个构建步骤只使用一些参数。原因是 第一步构建解决方案 第二步将测试解决方案 第三步将创建部署包 如果每个生成步骤的所有参数都传递给msBuild,则会创建三次包。我唯一能想到做的就是通过命令行选项传递参数,但是我不能使用模板。有没有办法将生成步骤配置为在调用msBuild之前删除参数?您可以将配置分成两部分,一部分用于生成/测试,另一部分用于

我有一个构建模板,配置了5个参数,比如配置、msdeploy artefact打包的PublishProfile。我的问题是,当我使用模板时,我不希望每个构建步骤只使用一些参数。原因是

  • 第一步构建解决方案
  • 第二步将测试解决方案
  • 第三步将创建部署包

如果每个生成步骤的所有参数都传递给msBuild,则会创建三次包。我唯一能想到做的就是通过命令行选项传递参数,但是我不能使用模板。有没有办法将生成步骤配置为在调用msBuild之前删除参数?

您可以将配置分成两部分,一部分用于生成/测试,另一部分用于包。然后,仅在需要参数的配置中定义参数,并创建从包到构建/测试的快照依赖关系

Build/Test->Package

然后,您可以在手动打包时选择cherrypick,或者,如果您想在每次生成时实际打包,则在包配置上放置一个VCS触发器,并将其从构建/测试配置中删除。这将自动触发构建链


希望这会有所帮助。

如果您想坚持使用模板,而不想走依赖链/构建链的路线,您可以将参数分类为buildparams、testparams和deployparams。然后可以将buildparams传递到构建步骤中,将testparams传递到测试步骤中,将config params传递到config步骤中

但是,我会使用构建目标而不是参数来处理这个问题