Conversione da YAML a JSON
Converte in JSON i dati in formato YAML. Permette di trasformare all'istante nel navigatore le strutture scritte in YAML — manifesti di Kubernetes, file di composizione dei contenitori, configurazioni dell'integrazione continua — in una forma trattabile con jq e con gli altri strumenti dedicati al JSON.
Consigli per l'uso
- Incollando senz'altro un file di configurazione in YAML — un manifesto di Kubernetes, un file di composizione dei contenitori — se ne visualizza la struttura come JSON, trattabile poi con jq e con gli altri strumenti a riga di comando dedicati al JSON.
- I valori che cominciano con uno zero, come codici postali e numeri di telefono, se scritti senza virgolette sono interpretati come numeri e perdono lo zero iniziale: racchiudete sempre fra virgolette ciò che deve restare testo.
- Gli YAML complessi che usano ancore, alias oppure scalari a blocchi con i segni `|` e `>` non sono previsti: riscriveteli in una forma semplice prima di incollarli.
- Togliendo la spunta alla visualizzazione formattata si ottiene un JSON su una sola riga, senza andate a capo: comodo quando dovete incollarlo nel corpo della richiesta di un'interfaccia.
Domande frequenti
A proposito — perché le configurazioni si scrivono in YAML mentre gli strumenti chiedono JSON
YAML ammette i commenti e riduce al minimo le virgolette: per questa leggibilità è largamente usato nei file di configurazione che una persona modifica direttamente, dai manifesti di Kubernetes ai file di composizione dei contenitori, dalle configurazioni di GitHub Actions ai copioni degli strumenti di automazione. JSON, invece, ha una specifica semplice e poco ambigua, facile da elaborare meccanicamente, e si è affermato come formato di scambio delle interfacce e come ingresso di strumenti a riga di comando come jq.
La conversione da YAML a JSON colma proprio questo divario fra ciò che le persone scrivono e ciò che gli strumenti chiedono. I manifesti di Kubernetes, in particolare, possono superare le centinaia di righe e cercarvi un valore con grep ha i suoi limiti. Convertendoli una volta in JSON e interrogandoli con jq, si estrae in un istante soltanto ciò che serve indicando un percorso come `.spec.containers[].image`.
La specifica YAML nella sua versione 1.2 è però assai ampia e comprende molte funzioni avanzate: il riuso dei valori con ancore e alias, i flussi con più documenti, gli scalari a blocchi per le stringhe su più righe. Questo strumento non le copre tutte e si limita al sottoinsieme comune che ricorre nella pratica — mappature, sequenze e scalari fondamentali — ottenendo così una realizzazione semplice e priva di dipendenze.