Variáveis e Saídas
Aprenda a usar variáveis de entrada para tornar suas configurações flexíveis e reutilizáveis e valores de saída para extrair informações importantes da infraestrutura implantada.
Variáveis e Saídas é uma aula grátis de DevOps Bootcamp no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de DevOps Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de DevOps Bootcamp inclui 4 aulas no total.
Configurações flexíveis
O Terraform permite definir sua infraestrutura como código. Mas e se você quiser reutilizar seu código para diferentes ambientes ou configurações?
É aí que entram as variáveis e as saídas. Elas tornam suas configurações flexíveis e fáceis de gerenciar.
Variáveis de entrada: flexibilidade
As variáveis de entrada funcionam como parâmetros para suas configurações do Terraform. Elas permitem personalizar aspectos da sua infraestrutura sem alterar o código principal.
- Evita codificar valores diretamente na configuração.
- Torna seus módulos e configurações reutilizáveis.
- Permite valores diferentes para ambientes diferentes (por exemplo, desenvolvimento e produção).
Declare suas variáveis
Você declara variáveis de entrada em um arquivo .tf, geralmente chamado de variables.tf. Cada variável precisa de um nome exclusivo.
Veja uma declaração básica:
variable "file_content" {
description = "Content to write to a local file."
type = string
}Tipos e valores padrão
As variáveis podem ter diferentes tipos, como string, number, bool, list ou map. Você também pode fornecer um valor padrão, tornando a variável opcional.
variable "environment" {
description = "The deployment environment (e.g., dev, prod)."
type = string
default = "dev"
}
variable "instance_count" {
description = "Number of instances."
type = number
default = 1
}Usando variáveis no código
Depois de declarada, você pode referenciar o valor de uma variável usando o prefixo var., seguido pelo nome dela (por exemplo, var.environment).
Isso permite que seus recursos se adaptem com base na entrada fornecida.
resource "local_file" "example" {
content = "Hello from ${var.environment}!"
filename = "example-${var.environment}.txt"
}Como fornecer valores
Há várias maneiras de fornecer valores para suas variáveis:
- Linha de comando: usando
-var="key=value"comterraform planouapply. - Arquivos
.tfvars: crie um arquivo comoterraform.tfvarsoudev.tfvars. - Variáveis de ambiente: usando
TF_VAR_name=value.
O arquivo terraform.tfvars é usado com frequência para definir valores:
# terraform.tfvars
environment = "staging"
file_content = "This is some custom content."Valores de saída: extraindo informações
Assim como as variáveis de entrada permitem passar dados para dentro da sua configuração, os valores de saída permitem extrair dados dela.
- Exibir informações importantes sobre os recursos provisionados (por exemplo, endereços IP e URLs).
- Passar dados entre configurações do Terraform, especialmente ao usar módulos.
- Facilitar a visualização do que o Terraform provisionou.
Declare suas saídas
Você declara os valores de saída em um arquivo .tf, geralmente chamado de outputs.tf. Cada saída precisa de um nome exclusivo e de um argumento value.
output "file_name" {
description = "The name of the generated local file."
value = local_file.example.filename
}Visualizando os valores de saída
Depois de executar terraform apply, você pode visualizar os valores de saída usando o comando terraform output.
O argumento value geralmente faz referência a um atributo de um recurso, como resource_type.resource_name.attribute.
# After 'terraform apply', run:
terraform output file_nameVariáveis e saídas em ação
Vamos combinar o que aprendemos. Este exemplo usa variáveis para o conteúdo e o ambiente, e exibe o nome e o conteúdo do arquivo. Crie estes três arquivos em um diretório:
# main.tf
terraform {
required_providers {
local = {
source = "hashicorp/local"
version = "~> 2.1"
}
}
}
resource "local_file" "message" {
content = var.greeting_message
filename = "hello_${var.env}.txt"
}
# variables.tf
variable "greeting_message" {
description = "The message content for the file."
type = string
default = "Hello CoddyKit!"
}
variable "env" {
description = "Environment name."
type = string
default = "dev"
}
# outputs.tf
output "generated_filename" {
description = "The full path of the generated file."
value = local_file.message.filename
}
output "file_content_used" {
description = "The content actually written to the file."
value = local_file.message.content
}Verificação rápida: variáveis e saídas
Quais das afirmações a seguir sobre variáveis e saídas do Terraform são TRUE?
Revisão: variáveis e saídas
Parabéns! Você aprendeu a tornar dinâmicas as suas configurações do Terraform:
- As variáveis de entrada permitem definir parâmetros para a sua infraestrutura.
- Você pode fornecer valores de variáveis por meio da CLI, de arquivos
.tfvarsou de variáveis de ambiente. - Os valores de saída ajudam a extrair e exibir informações importantes sobre os seus recursos provisionados.
Em seguida, você aprenderá como o Terraform acompanha a sua infraestrutura com o gerenciamento de estado!
Perguntas Frequentes
A aula “Variáveis e Saídas” é grátis?
Sim — o texto completo de “Variáveis e Saídas” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de DevOps Bootcamp, atualize para CoddyKit PRO. O curso de DevOps Bootcamp inclui 4 aulas no total.
O que vou aprender em “Variáveis e Saídas”?
Aprenda a usar variáveis de entrada para tornar suas configurações flexíveis e reutilizáveis e valores de saída para extrair informações importantes da infraestrutura implantada. Você pratica DevOps Bootcamp com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar DevOps Bootcamp?
Nenhuma experiência prévia é necessária. DevOps Bootcamp no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Variáveis e Saídas”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de DevOps Bootcamp?
Sim. Cada aula de DevOps Bootcamp inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Provedores e Recursos
- Variáveis e Saídas
- Fundamentos do Gerenciamento de Estado
- Módulos e reutilização de código