Как сохранить существующие теги при повторном развертывании ресурса через шаблон ARM?

Я заметил, что каждый раз, когда мы развертываем наш ресурс через шаблон ARM, это приводит к тому, что все теги, которые были вручную установлены для этого ресурса, удаляются (точнее - заменяются на те, которые указаны в шаблоне ARM). В этом ожидаемое поведение? Есть ли простой способ сохранить пользовательские теги и не стирать их? (Пример непростого способа: прочитать теги на ресурсе перед запуском шаблона ARM и передать все эти теги обратно в ARM).

Режим шаблона ARM - инкрементальный.


person Roman    schedule 21.01.2019    source источник
comment
Похоже, вы ищете автоматизацию, чтобы исправить то, что вы делаете вручную. Если вы хотите сохранить теги, развертывайте их с помощью шаблона, а не вручную.   -  person Ken W MSFT    schedule 21.01.2019
comment
ИТ-отдел в крупной организации добавляет свои настраиваемые теги к уже существующим ресурсам (тем, которые созданы с помощью наших шаблонов ARM). Каждый раз, когда мы развертываем новую версию, мы просто повторно запускаем шаблоны ARM, и они изменяют ресурс, но также очищаются теги, установленные внешними сторонами. Я знаю, что есть обходные пути для этой проблемы, например, почему внешняя сторона устанавливает tasg на вашем ресурсе, ваши шаблоны ARM должны делать это и никто другой, но это такие, какие они есть, и было бы очень хорошо иметь кажущуюся поддержку такой сценарий из Azure / ARM.   -  person Roman    schedule 22.01.2019


Ответы (1)


  1. да, это ожидаемое поведение.
  2. нет простого пути.
  3. режим шаблона не имеет значения.

вы можете попытаться получить тег объекта с помощью функции reference() и использовать функцию union() с объектом вывода функции reference() для создания правильных тегов, но я не пробовал этого.

person 4c74356b41    schedule 21.01.2019
comment
нет простого способа - еще одна проблема с подходом к развертыванию шаблонов ARM - person Roman; 21.01.2019
comment
ну, я бы не сказал, что это что-то неожиданное. они могли бы создать что-то вроде свойства tagAdd, которое просто добавляло бы теги, но этого нет в ARM api (не ошибка шаблона), так что ... - person 4c74356b41; 21.01.2019