Como o Terraform determina em qual arquivo está a informação?
sobes.tech IA
Resposta da IA
O Terraform carrega e processa automaticamente todos os ficheiros com extensões .tf e .tfvars no directório a partir do qual é executado (diretório de trabalho). Não requer especificar explicitamente os ficheiros.
- Os ficheiros
.tfcontêm os blocos de configuração principais: recursos, provedores, variáveis, saídas, módulos, etc. - Os ficheiros
.tfvarscontêm definições de valores para variáveis declaradas em ficheiros.tf. Podem também ser utilizados ficheiros com nomes comoterraform.tfvarsou um ficheiro com o nome do ambiente e extensão.tfvars(por exemplo,dev.tfvars) para carregamento automático.
O Terraform combina as informações de todos estes ficheiros para construir o gráfico de dependências final e o plano de execução.
Exemplo de estrutura de diretório:
/project
├── main.tf # Recursos principais
├── variables.tf # Declaração de variáveis
├── outputs.tf # Declaração de valores de saída
├── terraform.tfvars # Valores de variáveis para o ambiente padrão
└── modules/
└── vpc/
├── main.tf
├── variables.tf
└── outputs.tf
Neste exemplo, ao executar a partir de /project, o Terraform carregará main.tf, variables.tf e outputs.tf. Os valores de terraform.tfvars serão aplicados às variáveis declaradas em variables.tf. O módulo /modules/vpc será carregado se for chamado em um dos ficheiros de nível superior.
É importante notar que a ordem das declarações dentro de um ficheiro ou entre ficheiros não importa para o Terraform. Ele constrói o gráfico de dependências e executa operações em paralelo, se possível, com base nas ligações entre recursos e outros elementos de configuração.