Terraform azurerm 2.x Ошибка: «функции»: обязательное поле не установлено

11

Итак, azurerm обновился до 2.0 несколько часов назад ....

Мой основной код - версия, заблокированная для безопасности, но я провожу некоторое тестирование, чтобы увидеть, что изменилось по сравнению с общедоступной бета-версией 1.44, и теперь я получаю следующую ошибку для любой команды TF, кроме terraform init.

кто-нибудь еще сталкивался с этим?

Маркус Адамс
источник

Ответы:

28

Хорошо, запуск terraform в режиме отладки показал, что ошибка возникла на уровне провайдера.

Он не указан в руководстве по обновлению 2.0, но если вы посмотрите документы поставщика, теперь он показывает блок функций {}.

Таким образом, как минимум, поставщик должен выглядеть следующим образом:

provider "azurerm" {
   features {}
}
Маркус Адамс
источник
1
Это исправление сработало. Похоже, это обсуждается здесь: github.com/terraform-providers/terraform-provider-azurerm/…
Пол Миллер
2
Любые другие серьезные изменения? : s
Энрико
0

Вы также можете исправить версию поставщика Azurerm до последней стабильной версии 1.44:

provider "azurerm" {
  version = "~> 1.44"
}
ГИТ-Фло
источник
1
Да, однако, вы не сможете использовать новые функции, которые дает 2.0. Однако всегда полезно прикрепить к версии.
Маркус Адамс
1
Хотя закрепление версии в производстве всегда хорошая идея, вопрос здесь был специально для версии 2.0. Так что этот ответ не имеет большого значения для задаваемого вопроса.
JJ