如何在Azure DevOps发布管道中构建不同的配置?

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

我目前拥有一个包含测试,接受和生产阶段的Azure DevOps发布管道,该管道按该顺序触发。当有新的构建可部署时,将触发测试。

我的问题是当前所有阶段都部署完全相同的工件。但这是错误的,因为它们正在部署到需要具有自己版本的Web.config的不同环境。

如何更改设置以使所有环境都获得正确的软件包?我应该以一种可以针对多个不同配置进行构建的方式来更改构建设置,还是应该针对每个环境分别构建一个构建?以及如何选择发布管道的每个阶段应部署的工件?

这是我的发布管道现在的样子:enter image description here

asp.net-mvc azure-devops web-config azure-pipelines
2个回答
2
投票

每个环境都可以定义自己的变量。只需单击“变量”选项卡,并确保将所有这些变量的范围限定在适当的环境内。release variables screenshot

然后使用Azure App Service Deploy(如果定位到Azure)或IIS Web App部署任务,您可以使用变量的值更新配置文件,有关如何执行此操作,请单击here is the documentation


0
投票

我现在处于类似情况。如果我问的话,你如何解决这个问题?我想要的是:对开发分支的更改应部署到测试环境,对主分支的更改应部署到生产环境。

我需要yaml构建文件来进行掌握和开发吗?还是应该只在特定分支上?

对于有角度的项目,您可以制作环境文件并基于这些文件进行构建,例如:ng build --prod,ng build --dev。我听到有人说您应该使用相同的binaris,但是如何获得正确的配置,例如api url?

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