Ir para o conteúdo
Totalmente local

Extrator de variáveis Terraform

Liste cada bloco de variável num ficheiro Terraform com o seu tipo, valor por defeito e se é obrigatório.

Entrada
Saída

Extrator de variáveis Terraform

Cole código Terraform (HCL) e esta ferramenta analisa cada bloco `variable` listando o seu nome, tipo, descrição, valor por defeito e se é obrigatório ou marcado como sensível. Destina-se ao momento em que herda um módulo com dezenas de variáveis e sem documentação, ou precisa de uma lista do que exactamente um módulo raiz espera receber antes de o executar.

Escolha como a saída é estruturada com a opção de formato: uma tabela para uma visão geral rápida, um ficheiro tfvars que pode inserir directamente num diretório de trabalho, ou documentação Markdown pronta para colar num README. "Apenas variáveis obrigatórias" reduz a lista às que não têm valor por defeito, que é geralmente o caminho mais curto para saber o que realmente tem de fornecer. "Incluir variáveis sensíveis" permite-lhe descartar qualquer coisa marcada como `sensitive = true` quando está a produzir algo que pode partilhar mais amplamente. Ordene a lista por nome ou mantenha a ordem em que as variáveis aparecem no ficheiro, e alterne entre sintaxe HCL nativa e JSON com a opção de formato de valor.

A saída tfvars pode preencher cada linha com o valor por defeito da própria variável, ou deixar cada linha comentada como um modelo que preenche manualmente — útil quando quer um ponto de partida sem transportar silenciosamente os valores por defeito. Descrições, tipos e expressões de tipo aninhado como `object({...})` são lidas como escritas; o analisador não avalia expressões Terraform, portanto um valor por defeito que referencia outra variável ou uma chamada de função é mostrado como a expressão bruta em vez de um valor calculado.

Tudo corre localmente no seu navegador — o seu código Terraform, incluindo nomes de variáveis ou valores por defeito que considere sensíveis, nunca é enviado para lugar nenhum. Quando terminar, copie o resultado, descarregue-o como ficheiro .txt, ou envie a saída de volta para a entrada para continuar a refiná-la.

FAQ

Que construções Terraform compreende?
Procura especificamente por blocos `variable "name" { ... }` e lê os seus atributos `type`, `description`, `default` e `sensitive`. Tipos de blocos de recursos, módulos, saídas e outros são ignorados, e blocos aninhados como `validation` dentro de uma variável são desconsiderados.
Como decide se uma variável é obrigatória?
Uma variável é tratada como obrigatória quando o seu bloco não tem um atributo `default` — a mesma regra que o próprio Terraform usa para exigir um valor do chamador.
Avalia expressões nos valores por defeito?
Não. Um valor por defeito que é um literal simples (string, número, booleano, lista ou mapa) é analisado nesse valor; qualquer outra coisa, tal como uma referência a outra variável ou uma chamada de função, é mostrada exactamente como escrita.
Qual é a diferença entre as saídas tfvars e Markdown?
A saída tfvars é um ficheiro modelo com atribuições `name = value` e comentários, pronto para guardar como ficheiro `.tfvars`. A saída Markdown é documentação em prosa — um título por variável com o seu tipo, obrigatoriedade e valor por defeito listados por baixo — destinada a um README ou página wiki.
O meu código Terraform é enviado para algum lugar?
Não. A extração corre inteiramente no seu navegador — o seu código, nomes de variáveis e valores por defeito nunca saem do seu dispositivo.