msDeploy 包 uri 的 Arm 模板中的条件语句
Coditional statement in Arm template for msDeploy packageuri
我的目标是使用 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?
你可以尝试这样做:
"variables": {
"package1": [
{
"packageUri": "[parameters('zipUri')]"
}
]
"package2": [
{
"packageUri": "[parameters('zipUri2')]"
}
]
}
然后在您的 msdeploy 定义中:
"properties": {
"addOnPackages": "[if(parameters('boolparam'), concat(variables('package1'), variables('pakcage2')), variables('package1'))]"
我的目标是使用 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?
你可以尝试这样做:
"variables": {
"package1": [
{
"packageUri": "[parameters('zipUri')]"
}
]
"package2": [
{
"packageUri": "[parameters('zipUri2')]"
}
]
}
然后在您的 msdeploy 定义中:
"properties": {
"addOnPackages": "[if(parameters('boolparam'), concat(variables('package1'), variables('pakcage2')), variables('package1'))]"