2017-09-20 4 views
0

J'ai hérité d'un projet avec deux fichiers:Terraform - définition de la variable

a.tf 
dir_name/b.tf 

et chacun contient:

variable "region" { 
    default = "us-east-1" 
} 

Y at-il des raisons pour lesquelles je ne peux pas supprimer la définition variable à partir dir_name/b.tf comme il semble être déjà défini?

MISE À JOUR

a.tf contient une définition de module qui va comme ceci:

module "dir_name" { 
    source = "./dir_name" 
} 
+0

Est-ce le contenu de 'dir' traité comme un module? –

+0

Non - il n'y a pas de définition de "module" – Snowcrash

+0

Ok. Lorsque vous les exécutez, exécutez-vous terraform contre le dossier parent ou le sous-dossier? –

Répondre

0

Non, vous ne pouvez pas supprimer un ou l'autre. Terraform fonctionne au niveau du module, où chaque module a un ensemble explicite de variables d'entrée et d'attributs de sortie; Les variables ne peuvent pas être transmises implicitement d'un script à un module.

Si vous êtes passage de variables d'un endroit à un autre, il ne donne actuellement beaucoup de répétitions, par exemple:

module "dir_name" { 
    source = "./dir_name" 
    region = "${var.region}" 
}