Gerador de variáveis e locals do Terraform HCL a partir de JSON / YAML
Converta estruturas JSON e YAML em restrições de tipo de variáveis Terraform HCL (type = object({...})), valores padrão, blocos locals e definições terraform.tfvars.
variable "app_config" {
description = "Auto-generated Terraform variable constraint for app_config"
type = object({
cidr_block = string
enable_dns_hostnames = bool
enable_dns_support = bool
max_azs = number
nat_gateways = list(string)
subnets = list(object({
az = string
cidr = string
is_public = bool
name = string
route_table_id = string
}))
tags = map(string)
vpc_name = string
})
default = {
cidr_block = "10.100.0.0/16"
enable_dns_hostnames = true
enable_dns_support = true
max_azs = 3
nat_gateways = ["nat-08127394821a", "nat-09823412344b"]
subnets = [
{
az = "us-east-1a"
cidr = "10.100.1.0/24"
is_public = true
name = "public-1a"
route_table_id = "rtb-01a9b2c3d4"
},
{
az = "us-east-1b"
cidr = "10.100.2.0/24"
is_public = true
name = "public-1b"
route_table_id = "rtb-01a9b2c3d4"
},
{
az = "us-east-1a"
cidr = "10.100.10.0/24"
is_public = false
name = "private-app-1a"
route_table_id = "rtb-09f8e7d6c5"
},
{
az = "us-east-1b"
cidr = "10.100.11.0/24"
is_public = false
name = "private-app-1b"
route_table_id = "rtb-09f8e7d6c5"
}
]
tags = {
CostCenter = "infra-0091"
Environment = "production"
ManagedBy = "terraform"
Owner = "cloud-platform-team"
}
vpc_name = "prod-useast1-vpc"
}
}
Síntese AST 100% no lado do cliente
Toda a análise de JSON e YAML, a travessia da árvore AST e a síntese de tipos do Terraform HCL são executadas localmente na memória do navegador, sem solicitações de rede ou telemetria.
Conformidade com Terraform 1.3+ e opcionais
Detecta automaticamente campos ausentes ou anuláveis e os envolve na sintaxe padrão optional(type, default), prevenindo erros de tipo em tempo de execução durante o terraform plan.
Exportação de infraestrutura multidialeto
Exporta facilmente restrições de tipo para variables.tf, definições de valor para terraform.tfvars, blocos de configuração para locals.tf e arquivos tfvars.json prontos para produção.