基于阶段的Azure管道配置转换

问题描述 投票:0回答:1

我在构建/发布管道中遇到配置文件麻烦。

阅读此页:https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/transforms-variable-substitution?view=azure-devops&tabs=Classic#xml-transformation显示您可以拥有

*.<stage>.config(例如fabrikam.Production.config)

我在asp.net C#WebApplication中创建了一个名为Web.UAT.config的文件。该文件上的属性设置为ContentDoNotCopy,应在发布时将其放在输出目录中。我检查了现有的web.config文件,它是相同的。

enter image description here

我希望发布管道对我的App Service作业执行配置转换,但是问题是,发布时从不复制Web.UAT.config。

在我自己的计算机上,如果我右键单击该项目并选择发布,则Web.UAT.config文件也永远不会显示在输出中。

如何强制将此文件打包到我的部署程序包中,以便可以在UAT阶段运行转换?

该计划包括一个用于UAT的程序,一个用于PRODUCTION的程序,以便在推出发行版时每个人都获得正确的设置。

任何帮助将不胜感激。

干杯,

.net azure web-config config
1个回答
0
投票

我已经弄清楚了如何强制将转换包含在发布中。

我通过使用MSBuild目标找到了答案here

发布后,现在包含了转换。

发布管道现在基于Stage名称运行转换,例如Web.UAT.config,它与我发布管道中名为UAT的阶段匹配。要使其运行配置转换,您只需要在发布步骤中的[App Service Deployment]下勾选XML Transformation复选框即可。

© www.soinside.com 2019 - 2024. All rights reserved.