有人知道是否有办法在dependsOn元素中放置内联条件语句吗?我想在中放置一个条件,即如果nestedTemplateA已经存在或者nestedTemplateB已经存在,则资源将部署在其中。任何帮助都是感激的!
"dependsOn": [ "[or(nestedTemplateA, nestedTemplateB)]" ],
u4dcyp6a1#
ok,首先,你可以依赖于某物的存在(严格地说),你只能依赖于在同一个模板中成功创建的资源.所以如果你的模板有这样的结构:
resource1 - nested template resource2 - nested template resource3 - the one you are asking about
你只需要把它作为dependsOn:
"dependsOn": [ "resource1", "resource2" ]
但是,正如你的问题所说:“如果nestedTemplateA已经存在,或者如果nestedTemplateB已经存在,则资源将部署在上。”我很难确定我回答的问题是否正确。如果这不是您要问的问题,如果您需要更多帮助(或者重新表述您的问题),请对此答案发表评论。我将编辑此答案,谢谢!
fiei3ece2#
到目前为止,Azure在定义ARM模板中部署资源的顺序中添加了对条件dependsOn的支持这样就可以得到你想要的特性,也就是说:你可以简单地在depondsOn数组中添加所有的条件依赖项,那些被赋值为false的依赖项将被删除。
mpbci0fu3#
我也无法明确地找到如何在dependsOn中or()两个依赖项,但是我认为下面的plain/dumb方法也很好,虽然冗长,
dependsOn
or()
[ { "name": "first", "dependsOn": ["nestedTemplateA"], "do": "something" }, { "name": "second", "dependsOn": ["nestedTemplateB"], "do": "something" }, ]
至少这是我在我的情况下要做的。而且至少对我来说,接受的答案"dependsOn": ["resource1", "resource2"]是逻辑或并不是马上就能看出来的。希望有一天能找到这方面的文档。
"dependsOn": ["resource1", "resource2"]
3条答案
按热度按时间u4dcyp6a1#
ok,首先,你可以依赖于某物的存在(严格地说),你只能依赖于在同一个模板中成功创建的资源.所以如果你的模板有这样的结构:
你只需要把它作为dependsOn:
但是,正如你的问题所说:“如果nestedTemplateA已经存在,或者如果nestedTemplateB已经存在,则资源将部署在上。”我很难确定我回答的问题是否正确。如果这不是您要问的问题,如果您需要更多帮助(或者重新表述您的问题),请对此答案发表评论。我将编辑此答案,谢谢!
fiei3ece2#
到目前为止,Azure在定义ARM模板中部署资源的顺序中添加了对条件dependsOn的支持
这样就可以得到你想要的特性,也就是说:你可以简单地在depondsOn数组中添加所有的条件依赖项,那些被赋值为false的依赖项将被删除。
mpbci0fu3#
我也无法明确地找到如何在
dependsOn
中or()
两个依赖项,但是我认为下面的plain/dumb方法也很好,虽然冗长,至少这是我在我的情况下要做的。而且至少对我来说,接受的答案
"dependsOn": ["resource1", "resource2"]
是逻辑或并不是马上就能看出来的。希望有一天能找到这方面的文档。