部署外部配置文件

时间:2013-07-02 20:07:46

标签: .net deployment continuous-integration teamcity automated-deploy

我们目前使用外部配置文件来管理ASP.Net MVC应用程序中的某些配置。一些示例是appsettings,connectionStrings和日志记录配置。

我熟悉使用转换来跨不同的构建配置更改Web.Config,但在使用外部配置文件时似乎没有工具可以进行这些转换。

我还担心为每个环境创建单独的构建配置可能没有按预期使用该功能 - 是一个构建配置(默认情况下包括Debug和Release),用于表示部署环境(Dev,QA,分期,制作)?

我们正在使用TeamCity,虽然我认为这个问题适用于任何构建服务器。

是否有内置或推荐的方法来管理每个部署环境更改的外部/引用配置文件?这是应该在解决方案级别管理的东西,还是更像是构建服务器的功能?

1 个答案:

答案 0 :(得分:0)

选择正确的配置设置是部署过程的一部分。任何体面的部署工具都提供了必要的工具来选择并将正确的配置应用于您的部署。例如Octopus handles it

但是,如果您不使用专用的部署引擎,则可以编写自己的脚本来满足您的需求。您所要做的就是在配置文件中放置标记并为每个环境定义字典,并使用脚本来确定在部署过程中将哪些字典应用于模板。

我发现this implementation使用excel文件来保存值。恕我直言,其overkill和excel文件不是非常差异友好。在大多数情况下,INI文件应该足够了。