Json msDeploy packageuri的Arm模板中的密码语句

Json msDeploy packageuri的Arm模板中的密码语句,json,azure,azure-functions,arm-template,azure-template,Json,Azure,Azure Functions,Arm Template,Azure Template,我的目标是使用msDeploy部署打包的.zip,如果满足条件,则部署另一个。当前该模板如下所示: "resources": [ { "name": "MSDeploy", "type": "Extensions", "apiVersion": "2015-02-01", "dependsOn": [ "[resourceId('Microsoft.Web/Sites', variables('functionAppName

我的目标是使用msDeploy部署打包的.zip,如果满足条件,则部署另一个。当前该模板如下所示:

"resources": [
    {
      "name": "MSDeploy",
      "type": "Extensions",
      "apiVersion": "2015-02-01",
      "dependsOn": [
        "[resourceId('Microsoft.Web/Sites', variables('functionAppName'))]"
      ],
      "properties": {
        "addOnPackages": [
        {
           "packageUri": "[parameters('zipUri')]"
        },

        {
           "packageUri": "[if(parameters('boolparam'), parameters('zipUri2'), '')]"
        }
        ]
      }
    }
  ]

如果boolparam为true,则此操作有效,如果为false,则失败。是否可以始终部署zipUri,并且zipUri2具有条件?

您可以尝试这样做:

"variables": {
    "package1": [
        {
            "packageUri": "[parameters('zipUri')]"
        }
    ]
    "package2": [
        {
            "packageUri": "[parameters('zipUri2')]"
        }
    ]
}
然后在您的msdeploy定义中:

"properties": {
    "addOnPackages": "[if(parameters('boolparam'), concat(variables('package1'), variables('pakcage2')), variables('package1'))]"

工作完美!谢谢