Terraform azurerm 2.x Erreur: «fonctionnalités»: le champ obligatoire n'est pas défini

11

Donc azurerm mis à jour en 2.0 il y a quelques heures ....

Mon code principal est une version verrouillée pour des raisons de sécurité, mais je fais des tests pour voir ce qui a changé depuis la version bêta publique de 1.44 et maintenant j'obtiens l'erreur suivante sur n'importe quelle commande TF en dehors de terraform init.

quelqu'un d'autre est-il venu à ce sujet?

Marcus Adams
la source

Réponses:

27

OK, l'exécution de terraform en mode débogage a montré que c'était au niveau du fournisseur que l'erreur était levée.

Il n'est pas répertorié dans le guide de mise à niveau 2.0, mais si vous regardez les documents du fournisseur, il affiche maintenant un bloc de fonctionnalités {}.

Donc, au minimum, le fournisseur doit maintenant ressembler à:

provider "azurerm" {
   features {}
}
Marcus Adams
la source
1
Ce fixe a fonctionné. Il semble que cela soit discuté ici: github.com/terraform-providers/terraform-provider-azurerm/…
Paul Miller
2
D'autres changements de rupture? : s
Enrico
0

Vous pouvez également corriger la version du fournisseur azurerm à la dernière version stable 1.44:

provider "azurerm" {
  version = "~> 1.44"
}
git-flo
la source
1
Oui, vous pourriez cependant ne pas être en mesure d'utiliser les nouvelles fonctionnalités offertes par 2.0. Il est cependant toujours recommandé de s'épingler à une version.
Marcus Adams
1
Bien que l'épinglage de la version en production soit toujours une bonne idée, la question ici était spécifiquement pour la version 2.0. Cette réponse n'a donc pas beaucoup de valeur pour la question posée.
JJ