【问题标题】:Changing Config based on Build Definition TFS 2012根据构建定义 TFS 2012 更改配置
【发布时间】:2012-12-13 16:10:33
【问题描述】:

我有一个代码库,但有多个客户端。有没有一种方法可以使用构建定义来构建单独的 IIS 文件夹并更改每个客户端的配置,而不是在源代码中更改它并一个一个地构建它们。

我什至会很高兴为每个客户端提供一个构建定义,它只更改 TFS 中代码所需的内容。

谢谢!

【问题讨论】:

    标签: build msbuild build-automation


    【解决方案1】:

    您可以在 Visual Studio 中创建一个类似于当前“调试”配置的配置,该配置将与您的解决方案相关联。然后,您可以让任何 Web 应用程序为每个配置创建一个 Web.Config 转换:

    Web.Config
    --Debug.Web.Config
    --Customer1.Web.Config
    --Customer2.Web.Config
    --Customer3.Web.Config
    --Customer4.Web.Config
    

    然后您可以编辑构建定义,而不仅仅是在构建期间构建解决方案的默认配置,您可以告诉它构建所有 5 个配置。

    图:为您的 TF 构建定义添加多个配置

    项目(即“Customer1”)是否不在下拉列表中并不重要,只要它与 Visual Studio 匹配即可。

    这将导致:

    \\DropFolder\[BuildDefenition]\[BuildDefenition]_[BuildNumber]\[configuration]\*
    

    因此,如果您想获取客户 1 的实例,您可以从中提取:

    ...[BuildDefenition]_[BuildNumber]\Customer1\_PublishSites\*
    

    您可以在 MSDN 上找到如何创建配置:http://msdn.microsoft.com/en-us/library/kwybya3w.aspx

    【讨论】:

    • 你用什么来做转换?还有如何告诉 TFS 构建所有配置?
    • 转换由 Visual Studio 自动完成。您在“构建定义|流程|要构建的项目|要构建的配置”中设置要构建的配置......我在上面添加了一个图表......
    猜你喜欢
    • 1970-01-01
    • 2014-09-06
    • 1970-01-01
    • 2012-07-07
    • 2014-05-20
    • 1970-01-01
    • 2017-03-26
    • 2013-08-25
    • 1970-01-01
    相关资源
    最近更新 更多