HCL a JSON
Converte la configurazione HCL nello stile Terraform in JSON equivalente.
HCL a JSON
Incolla HCL — il linguaggio utilizzato da Terraform, Packer e altri strumenti HashiCorp — e questo convertitore restituisce il JSON equivalente. Gestisce le forme comuni di un vero file .tf: attributi di livello superiore e blocchi con zero o più etichette di stringa come resource "aws_instance" "web", annidati all'interno di altri blocchi fino alla profondità che la tua configurazione richiede. I blocchi etichettati si convertono usando la stessa convenzione che la stessa sintassi .tf.json di Terraform utilizza, quindi una risorsa con un tipo e un nome finisce sotto resource → type → name nel risultato, e i blocchi ripetuti nello stesso percorso — due blocchi ingress dentro una risorsa, diciamo — diventano un array JSON invece di sovrascriversi a vicenda.
Stringhe, numeri, booleani, null, liste e oggetti letterali inline (tags = { Name = "web" }) si convertono direttamente. Le stringhe heredoc (<<EOT ... EOT e la forma indentata <<-EOT) diventano stringhe JSON normali con le loro interruzioni di riga conservate, e le interpolazioni ${var.name} — insieme ai riferimenti semplici come var.region o una chiamata come merge(a, b) — rimangono come testo letterale piuttosto che essere valutati, poiché nessuno strumento browser può risolvere variabili o provider di Terraform.
Le opzioni coprono la larghezza dell'indentazione (2 spazi, 4 spazi, tabulazioni o minificato), ordinamento alfabetico delle chiavi, conservazione o eliminazione dei commenti, e scelta tra un singolo oggetto JSON unito o un elenco flat di blocchi — ciascuno con il suo tipo, etichette e corpo — per scripting più facile. Le chiavi di attributo duplicate all'interno di un blocco sono segnalate nel conteggio dal vivo piuttosto che essere silenziosamente eliminate, e sono accettati sia gli interruttori di riga Windows che Unix.
Tutto viene eseguito localmente nel tuo browser — la tua configurazione non viene mai caricata, il che importa quando nomina risorse reali, IP o ID di account. Copia il JSON, scaricalo come file .txt, oppure invialo direttamente a un altro strumento per continuare a lavorare.