J'ai écrit une configuration de Terraform avec une définition variable comme: lorsque j'exécute est-il un moyen de dire Terraform de travailler avec les Var actuels Vars? Ou dois-je l'exporter et les transmettre manuellement un par un? P> p> TerraForm Plan code> Je suis invité à remplir cette variable même si cette variable est Situé dans mon environnement. P>
3 Réponses :
Vous pouvez définir la variable d'environnement Si vous utilisez bash, cela pourrait ressembler à ceci: P> tf_var_google_cloud_region code> pour définir cette variable.
export TF_VAR_GOOGLE_CLOUD_REGION="$GOOGLE_CLOUD_REGION"
terraform apply ...
Ouais je lis ça. Je me demandais simplement si je peux en quelque sorte répliquer directement à partir des Vares env. Cela signifie fondamentalement que j'ai besoin de les introduire tous et de les préparer avec ce préfixe.
J'utiliserais moi-même des sources de données AWS_RÉGIENNE et AWS_CALLER_IENTITUTITY et commuter ces variables aux locaux car elles correspondent à ce que le fournisseur correspondre à ce que le fournisseur, mais que vous utilisez GCP et je ne trouve pas de sources de données équivalentes pour couvrir tout cela. Une boucle à travers les variables peut être votre seule option.
Vous pouvez créer un fichier qui se termine par .tfvars code> ou .tfvars.json code>
puis lorsque vous exécutez un plan plan code> Vous spécifiez ce fichier:
{
"image_id": "ami-abc123",
"availability_zone_names": ["us-west-1a", "us-west-1c"]
}
Cela ne répond pas à ma question.
Je m'approcherais en créant un fichier variables.tf dans le répertoire de projet. Avec le bloc de variable requis, vous pouvez spécifier une valeur par défaut:
variable "GOOGLE_CLOUD_REGION" { type = string default = "us-west1" }