Azure ARM 模板:DependsOn 条件语句

che*_*224 3 json azure azure-rm-template azure-template

有谁知道是否有办法在dependsOn元素中放置内联条件语句?我想设置一个条件,即如果nestedTemplateA 已经存在或者nestedTemplateB 已经存在,则资源将部署。

任何帮助表示赞赏!

  "dependsOn": [
    "[or(nestedTemplateA, nestedTemplateB)]"
  ],
Run Code Online (Sandbox Code Playgroud)

4c7*_*b41 5

好的,首先,您可以依赖于某些东西的存在(严格来说),您只能依赖于在同一个 (!!) 模板中成功创建的资源。因此,如果您的模板具有以下结构:

resource1 - nested template
resource2 - nested template
resource3 - the one you are asking about
Run Code Online (Sandbox Code Playgroud)

你只需要使用它作为dependsOn:

"dependsOn": [
    "resource1",
    "resource2"
]
Run Code Online (Sandbox Code Playgroud)

但是,正如您的问题所写:“如果nestedTemplateA 已经存在或者nestedTemplateB 已经存在,则资源将部署。” 我真的很难确定我在回答正确的问题。如果这不是您要问的问题,如果您需要更多帮助(或者,重新表述您的问题),能否请您对此答案发表评论。我会编辑这个答案,干杯!

  • 我完全明白你在说什么。我确实有多个资源(资源1、资源2、资源3)。然而,这些资源是有条件的,因此有时会部署,有时则不会。我想知道是否可以使用 dependentOn 元素作为条件语句。例如,如果资源1 OR资源2部署成功,则创建资源4。 (2认同)