Saltar al contenido
Totalmente local

Extractor de variables de Terraform

Lista cada bloque de variable en un archivo Terraform con su tipo, valor por defecto y si es requerido.

Entrada
Salida

Extractor de variables de Terraform

Pega código Terraform (HCL) y esta herramienta escanea cada bloque `variable` listando su nombre, tipo, descripción, valor por defecto e indicando si es requerido o marcado como sensible. Está pensada para el momento en que heredas un módulo con docenas de variables sin documentación, o necesitas un checklist de exactamente qué espera el módulo raíz antes de ejecutarlo.

Elige cómo dar forma al resultado con la opción de salida: una tabla para una visión rápida, un archivo tfvars que puedes meter directamente en un directorio de trabajo, o documentación Markdown lista para pegar en un README. "Solo variables requeridas" reduce la lista a las que no tienen valor por defecto, que usualmente es el camino más corto para saber qué realmente tienes que suministrar. "Incluir variables sensibles" te permite descartar cualquier cosa marcada `sensitive = true` cuando estés produciendo algo que podrías compartir más ampliamente. Ordena la lista por nombre o mantén el orden en que las variables aparecen en el archivo, y cambia cómo se escriben los valores entre sintaxis HCL nativa y JSON con la opción de formato de valores.

La salida tfvars puede prellenar cada línea con el valor por defecto de la propia variable, o dejar cada línea comentada como una plantilla que rellenas manualmente — útil cuando quieres un punto de partida sin llevar silenciosamente valores por defecto adelante. Descripciones, tipos y expresiones de tipo anidadas como `object({...})` se leen tal como están escritas; el analizador no evalúa expresiones de Terraform, así que un valor por defecto que referencia otra variable o una llamada a función se muestra como la expresión cruda en lugar de un valor computado.

Todo se ejecuta localmente en tu navegador — tu código Terraform, incluyendo cualquier nombre de variable o valor por defecto que consideres sensible, nunca se carga a ningún lado. Cuando termines, copia el resultado, descárgalo como archivo .txt, o envía la salida de vuelta a la entrada para seguir refinándola.

Preguntas frecuentes

¿Qué construcciones de Terraform entiende?
Busca específicamente bloques `variable "name" { ... }` y lee sus atributos `type`, `description`, `default` y `sensitive`. Los tipos de bloque resource, module, output y otros se saltan, y los bloques anidados como `validation` dentro de una variable se ignoran.
¿Cómo decide si una variable es requerida?
Una variable se trata como requerida cuando su bloque no tiene el atributo `default` en absoluto — la misma regla que Terraform utiliza para exigir un valor del llamador.
¿Evalúa expresiones en valores por defecto?
No. Un valor por defecto que es un literal simple (string, número, booleano, lista o mapa) se analiza en ese valor; cualquier otra cosa, como una referencia a otra variable o una llamada de función, se muestra exactamente como está escrita.
¿Cuál es la diferencia entre las salidas tfvars y Markdown?
La salida tfvars es un archivo de plantilla con asignaciones `name = value` y comentarios, listo para guardar como archivo `.tfvars`. La salida Markdown es documentación en prosa — un encabezado por variable con su tipo, requisito y valor por defecto listados debajo — pensada para un README o página wiki.
¿Se carga mi código Terraform a algún lugar?
No. La extracción se ejecuta completamente en tu navegador — tu código, nombres de variables y valores por defecto nunca dejan tu dispositivo.