0

尝试对使用 arm 模板部署 vm 的 ps1 脚本进行一些额外的调整。

该脚本询问是否需要可用区,如果是,则为您提供可用的区域选项。如果不需要,则将 $zone 变量设置为 defaultvalue 或 null,然后在 arm 模板中使用该值来部署没有任何可用区的 vm。

我的 template.json 文件包含该区域的以下参数。

"availabilityZone": {
  "type": "array",
  "defaultValue": []

IF 语句包含

   "zones": "[if(empty(parameters('availabilityZone')), json('[]'), array(parameters('availabilityZone')))]"

我也尝试使用以下方法,但它不起作用

json('null') 

如果我对可用区进行硬编码,那么它会相应地部署。如果将可用区排除在部署之外,它将部署到可用区 1。

如果 $zone 设置为 0、$null 或留空,则失败并显示

错误:代码=无效部署参数值;Message=部署参数“availabilityZone”的值为空。请指定值或使用参数引用。

我错过了什么?

干杯

4

1 回答 1

0

属性区是一个数组,你可以通过传递空数组'[]'来实现你需要的东西

于 2021-12-14T07:44:35.757 回答