在ARM模板中,可以使用以下方式来确保Web App插槽不会被部署的Web App设置覆盖:
{
"type": "Microsoft.Web/sites/slots",
"name": "[concat(parameters('webAppName'), '/slots/', uniqueString(resourceGroup().id))]",
...
}
"parameters": {
...
"webAppSlotName": {
"type": "string",
"defaultValue": "slot1"
},
...
},
"variables": {
...
"slotAppSettings": {
...
},
...
},
"resources": [
{
"type": "Microsoft.Web/sites/slots",
"name": "[concat(parameters('webAppName'), '/slots/', parameters('webAppSlotName'))]",
"apiVersion": "2021-02-01",
"location": "[parameters('location')]",
"properties": {
...
"siteConfig": {
"appSettings": "[variables('slotAppSettings')]",
...
},
...
}
}
]
通过这种方式,Web App和Web App插槽在ARM模板中都有独立的参数和变量,可以分别设置它们的配置,避免被覆盖。
希望以上解决方法对你有帮助!