Шаблон Azure ARM: условное выражение DependsOn

Кто-нибудь знает, есть ли способ поместить встроенный условный оператор внутри элемента dependsOn? Я хочу поставить условие, при котором ресурс будет развернут, если уже существует nestedTemplateA ИЛИ если уже существует nestedTemplateB.

Любая помощь приветствуется!

  "dependsOn": [
    "[or(nestedTemplateA, nestedTemplateB)]"
  ],

person chew224    schedule 28.11.2018    source источник


Ответы (2)


хорошо, во-первых, вы можете зависеть от существования чего-то (строго говоря), вы можете зависеть только от успешного создания ресурса в том же (!!) шаблоне. поэтому, если ваш шаблон имеет такую ​​структуру:

resource1 - nested template
resource2 - nested template
resource3 - the one you are asking about

вам просто нужно использовать это как dependsOn:

"dependsOn": [
    "resource1",
    "resource2"
]

но, как гласит ваш вопрос: «ресурс будет развернут, если уже существует nestedTemplateA ИЛИ если уже существует nestedTemplateB». Мне действительно трудно быть уверенным, что я отвечаю на правильный вопрос. если это не то, о чем вы спрашиваете, не могли бы вы прокомментировать этот ответ, если вам нужна дополнительная помощь (и, возможно, перефразируйте свой вопрос). Я отредактирую этот ответ, ура!

person 4c74356b41    schedule 29.11.2018
comment
Я точно понимаю, что вы говорите. У меня есть несколько ресурсов (resource1, resource2, resource3). Однако эти ресурсы являются условными, поэтому иногда они развертываются, а иногда нет. Мне было интересно, можно ли использовать элемент dependsOn в качестве условного оператора. Например, если resource1 OR resource2 развернут успешно, создайте resource4. - person chew224; 29.11.2018
comment
в основном просто зависит от обоих, если они пропущены, сбой не произойдет. Кроме того, если вам нужно полностью пропустить его, если они оба пропущены, вам нужно использовать условие. в основном, просто всегда зависеть от чего-то, от чего вам нужно зависеть, если это пропущено, зависит от того, что не ломается. - person 4c74356b41; 29.11.2018

На сегодняшний день в Azure добавлена ​​поддержка условной зависимости от Определите порядок развертывания ресурсов в шаблонах ARM

Это позволяет получить именно ту функцию, которую вы ищете. То есть: вы можете просто добавить все условные зависимости в массив depondsOn. Эти зависимости, оцененные как ложные, будут удалены.

person JaydenLiang    schedule 24.02.2021