我正在使用 Visual Studio Team Services,并尝试设置发布管理以允许将我们的 Azure Web App 自动部署到多个环境。我希望将相同的源部署到每个环境,但修改配置设置。
我希望能够为我的应用程序创建一个单一的构建,然后在部署时为每个环境修改配置。我知道这可以针对 appSettings 和 connectionStrings 完成(通过 token 化,甚至通过 Azure 门户管理这些设置),但我希望能够对 web.config 文件进行更常规的更改。例如,我希望能够:
- 更新“简单”设置,例如 appSettings/connectionStrings
- 更新元素的多个属性(例如 httpErrors)
- 插入或重写配置文件本身的部分(例如添加 IIS 重写规则,或删除生产中不需要的 HTTP 处理程序)
目前,我们通过使用配置文件转换和为每个环境单独发布配置文件(手动部署)来实现这一目标。如果我想要一个单一的发布管道,我看不到重新使用它的方法。
我希望有人能帮助我指明正确的方向。我也很高兴接受替代解决方案 - 最终我只是希望能够使用不同的配置将相同的源(例如,来自源代码管理中的相同提交)部署到多个环境,同时保留一些从开发到测试再到最终生产的流程。
最佳答案
您可以使用Tokenization Task根据环境变量更新文件。
更多类似的扩展:Replace Tokens和 Colin's ALM Corner Build & Release Tools .
关于azure-devops - 使用 VSTS 发布管理,如何修改每个环境的 Azure Web 应用程序的配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39562405/