3

我一直在阅读有关构建一次然后为每个环境进行配置的信息。例如,这里有一些如何做到这一点的想法: 使用 msdeploy 和 Visual Studio 2012 构建一次并部署到多个环境

我的问题是,这如何与您的构建服务器一起使用?有没有人启动过一个部署到多个环境的构建?我希望每个环境都有自己的构建定义和自己的规则/时间表。在那种情况下,构建一次真的可行吗?我觉得我错过了什么……

4

2 回答 2

3

我使用基于 MSDeploy 和 Web Publishing Pipeline 的构建管道,但这不是 MSBuild 脚本直接支持的方案。

我使用的基本前提是在构建的第一个“阶段”构建一个包,然后部署到各种环境,直到它投入生产。您的构建服务器如何处理交叉构建“工件”是您需要研究的事情。

另一个问题是当前不支持将包部署到发布配置文件。但是,您始终可以选择从命令行部署包(或者甚至将其上传给可以通过 IIS 导入的管理员)。

这些资源(免责声明包括指向我自己的博客和代码的链接)应该会有所帮助:

于 2013-03-02T04:44:04.107 回答
3

我一直这样做。为每个环境构建一次并重新配置。我不使用 MSdeploy。我确实使用 xdt 模板化转换,这些转换在部署时与环境属性相结合。构建创建一个可以配置的包。

这消除了在部署时对 Visual Studio 的需求。我可以开始部署到多个环境。我还可以在部署时支持新的/更改的环境。您可以使用 msbuild、ctt 工具http://ctt.codeplex.com/documentation 和令牌转换过程(例如 msbuild 扩展包中的去令牌化任务)轻松实现此目的。如果您构建此过程,您可以托管在 CI 工具(TFS,但 ID 为 Teamcity)以及手动/cmdline/powershell 中。

于 2013-03-02T18:52:58.153 回答