【问题标题】:Coditional statement in Arm template for msDeploy packageurimsDeploy 包 uri 的 Arm 模板中的条件语句
【发布时间】:2019-10-04 05:01:27
【问题描述】:

我的目标是使用 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 为真,则此方法有效,但如果为假,则失败。是否可以始终部署 zipUri 和 zipUri2 条件?

【问题讨论】:

    标签: json azure azure-functions arm-template azure-template


    【解决方案1】:

    您可以尝试这样做:

    "variables": {
        "package1": [
            {
                "packageUri": "[parameters('zipUri')]"
            }
        ]
        "package2": [
            {
                "packageUri": "[parameters('zipUri2')]"
            }
        ]
    }
    

    然后在你的 msdeploy 定义中:

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

    【讨论】:

    • 完美运行!谢谢
    猜你喜欢
    • 1970-01-01
    • 2012-12-20
    • 1970-01-01
    • 2019-10-05
    • 2012-09-14
    • 1970-01-01
    • 2014-07-01
    • 2014-01-18
    • 2014-03-11
    相关资源
    最近更新 更多