我在VSTS中有一个Develop分支,并且build(CI)定义成功。现在,我想将构建部署到Dev和UAT和PROD环境。如果发布成功,则所有环境都将具有Dev设置,因为Dev build / Dev分支web.config具有dev设置。如何管理各个版本的UAT / PROD / DEV设置。
注意:Develop分支的web.config中提到的开发设置。
更新1:
对于下面的XML文件,需要在运行时根据不同的环境修改值。需要在Release管道中配置.xml文件值更改。
<RPSServer>
<Sites>
<Site SiteName="default">
<SiteId>123546</SiteId>
<ReturnURL>Custome URL</ReturnURL>
</Site>
</Sites>
</RPSServer>
在上述xml文件中,DEV,UAT和PROD的SiteId和ReturnURL将有所不同
答案 0 :(得分:0)
如果您有一个发布管道,那么使用变量可以帮助您。
答案 1 :(得分:0)
不确定将部署到何处,但是Azure App Service Deploy和IIS Web App Deploy任务现在都支持file transforms and variable substitution。如果您通过Azure App Service Deploy任务来部署应用程序,则有文件转换和变量替换选项可以进行转换。
您还可以使用XDT Transform extension来对配置文件应用转换,因此您可以在发布工件中包含/添加相关的配置文件,然后针对发布环境配置转换。
另一种方法是,您可以通过Replace Tokens或Tokenization task替换配置文件中的值。
您可以参考以下博客来做到这一点:
-
还可以替换* .xml文件的令牌。例如,使用Replace Tokens扩展名,我们可以如下所示编辑xml文件,然后为不同的环境/阶段设置变量。
<RPSServer>
<Sites>
<Site SiteName="default">
<SiteId>#{SiteId}#</SiteId>
<ReturnURL>#{URL}#</ReturnURL>
</Site>
</Sites>
</RPSServer>