有没有办法排除 appsettings.json 由 Azure IIS Web App 部署任务部署?

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

我有一个 API,可以使用 Azure 发布管道部署到选定的位置。

其中一些是通过管道部署的天蓝色环境(实时、预生产、测试等),以及我们根据环境通过 Azure 门户在应用服务本身上更改的 AppSetting 配置。

其他版本是为自行托管我们软件的客户提供的本地版本。这些还可以使用 IIS Web App 部署任务通过发布管道进行部署,并使用 IIS 托管在其服务器上。

一切正常,第一次部署后,我们可以跳上这些服务器并更改

appsettings.json
文件以包含该环境的正确信息,并且效果良好。

问题是当我们通过管道部署后续版本时。理想情况下,我们只需按一下按钮即可免提释放,但由于管道总是从源分支上传

appsettings.json
的副本并替换服务器上配置的副本,因此我们必须登录到每个分支服务器并在发布前制作
appsettings.json
的副本,然后在发布后替换它。

有没有一种方法可以配置 IIS Web 应用程序部署任务以仅排除或跳过 appsettings.json 文件的部署? 我可以在第一次运行后设置该文件,或者如果我们添加新内容到它,但我希望每个其他版本都可以发生,而不必每次都复制/粘贴文件。

azure-devops deployment azure-pipelines cicd azure-pipelines-release-pipeline
1个回答
0
投票

不同环境下不同设置的一般做法是有对应的appSettings.json文件,如

  • appSettings.live.json
  • appSettings.proprod.json
  • appSettings.test.json

等等

如果您还想要自定义设置,您可以拥有另一个从不部署的文件,而仅在服务器上编辑,这将覆盖您的其他设置,可能称为 appSettings.Override.json - 或其他。

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