如何使用 arm 模板更新 azure appsettings

Posted

技术标签:

【中文标题】如何使用 arm 模板更新 azure appsettings【英文标题】:How to update azure appsettings with arm template 【发布时间】:2021-01-11 15:42:36 【问题描述】:

我有一个 Azure API 应用服务,其配置中有 30 多个应用设置。此应用服务部署在 3 个环境中,其中一些应用设置是跨环境通用的,而其他设置是特定于环境的。我们正在使用 Devops CD 管道部署到不同的环境。

现在这些设置是在应用程序门户中手动创建/更新的。但我希望将这些设置作为部署的一部分 - 在源文件或 devops CD 管道中。

我知道 Devops 有一个“Azure 应用程序服务设置”任务,它完全符合我的要求 - 但是它的应用程序设置槽中有 5000 个字符的限制,所以我必须为此添加几个任务,很快就会变得难以管理(大量挖掘以找到特定设置)。

是否可以使用 arm 模板进行应用设置?或者也许还有其他方法可以做到这一点?

【问题讨论】:

【参考方案1】:

我终于找到了模板所需的正确“种类”(我认为查找文档有点困难,因为我一直以 web-app 文档而不是 api app 结尾):

"resources": [

  "type": "Microsoft.Web/sites/slots",
  "apiVersion": "2018-11-01",
  "name": "[parameters('MyAppName']",
  "location": "West Europe",
  "kind": "api",
  "properties": 
    "siteConfig": 
      "appSettings": [
        
          "name": "Setting1",
          "value": "Setting1Value"
        
      ]
    
  

]

然后我使用 Devops 为每个环境设置参数值

【讨论】:

感谢您在这里分享您的解决方案,请您接受您的解决方案as the answer?因此,对于遇到相同问题的其他成员轻松找到解决方案将很有帮助。祝你有美好的一天:)

以上是关于如何使用 arm 模板更新 azure appsettings的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Azure Arm 模板中使用粘性暂存槽

如何将 Azure 管道变量传递给 AzureResourceManagerTemplateDeployment@3 任务使用的 ARM 模板?

如何绕过 Azure 数据工厂 ARM 模板参数限制?

使用 ARM 模板对 Azure 存储帐户容器设置合法保留

为从门户创建的 Azure 日志分析警报导出 ARM 模板

如何将Azure管道变量传递给AzureResourceManagerTemplateDeployment @ 3任务使用的ARM模板?