【问题标题】:Azure BICEP deploy if doesn't already existAzure BICEP 部署(如果尚不存在)
【发布时间】:2021-11-12 22:18:43
【问题描述】:

我不确定这是否可行,但我想做的是从一个 virtualNetwork.main.bicep 文件创建一个虚拟网络,然后从虚拟网络中的另一个 subnet.main.bicep 创建一个子网。现在我可以这样做了,但我遇到的问题是,如果我重新运行虚拟网络 virtualNetwork.main.bicep,它将删除由 subnet.main.bicep 文件创建的所有子网

我知道我可以将所有子网添加到virtualNetwork.main.bicep,但我的想法是我可以将子网的创建交给其他人,同时保持全局网络配置。

那么有什么方法可以阻止虚拟网络文件删除已经存在的文件吗?

希望这是有道理的。

干杯

【问题讨论】:

  • 您可以获取现有的 VNET 配置并合并子网属性,但是您的模板会变得非常复杂。如果您使用 az cli 创建 vnet,它会更容易。您可以创建一个 vnet,创建一些子网,然后如果您重新运行 az cli 脚本,它不会删除现有的子网。

标签: azure infrastructure-as-code azure-bicep


【解决方案1】:

检查资源是否已存在是尚未实现的 Bicep 中的 ask

此外,您正在考虑从多个模块创建一个虚拟网络,我担心您也会对此感到失望,因为 here 的讨论并不真正支持这一点。 here 提供的指导建议:

建议在 vnet 内的数组属性中创建所有子网

不幸的是,这表明您必须一次创建所有子网以适应 API 的缺点。对不起!

【讨论】:

    猜你喜欢
    • 2022-08-16
    • 2023-01-17
    • 2022-10-15
    • 2022-09-23
    • 2021-11-12
    • 2023-03-19
    • 2022-06-13
    • 2020-03-07
    • 2021-06-16
    相关资源
    最近更新 更多