Vai al contenuto
100% locale

Appiattitore di valori Helm

Converte un file values.yaml in percorsi helm --set, o ricompone i percorsi in YAML.

Ingresso

Appiattitore di valori Helm

Incolla un file values.yaml di un grafico Helm e questo strumento appiattisce ogni chiave annidata in un percorso puntato con il suo valore, nel formato a.b.c=value atteso da helm upgrade --set. È il modo più veloce per convertire un file di valori in un insieme di flag di override per una pipeline CI, un'installazione singola o un confronto rispetto ai valori di un altro ambiente — senza camminare manualmente attraverso l'albero YAML.

Cambia la direzione per andare nell'altro modo: incolla un elenco di coppie path=value, o un frammento --set a=1,b=2 completo copiato da una riga di comando, e lo strumento ricompone la struttura YAML annidata. La notazione degli array controlla se gli elementi dell'elenco si rendono come tags[0] (stile tra parentesi quadre, corrispondendo alla sintassi di Helm) o come un indice puntato come tags.0 ; il formato di output alterna tra un percorso per riga e un frammento di comando --set singolo pronto da incollare dopo helm install o helm upgrade.

Due opzioni gestiscono gli angoli acuti della sintassi --set di Helm. Escapare punti e virgole nei valori sfugge qualsiasi "." o "," letterale all'interno di un valore, poiché entrambi i caratteri sono strutturali in --set — senza escape, un valore come "1.2.3" o "a,b" sarebbe frainteso come percorso annidato o secondo flag, e lo strumento contrassegna invece quelle righe così puoi vedere esattamente quali hanno bisogno di attenzione. Saltare i valori vuoti e nulli rimuove le stringhe vuote, null, e gli oggetti o array vuoti dall'output, il che mantiene l'elenco di flag di un grande grafico solo ai override che contano. Un'opzione di prefisso del percorso antepone un segmento fisso — utile quando i valori appartengono a un subchart e ogni flag deve iniziare con il nome di quel subchart.

Tutto viene eseguito localmente nel tuo browser; il file dei valori non lascia mai il tuo dispositivo, il che conta quando contiene nomi di servizi interni, limiti di risorse o altre configurazioni che non vorresti incollare in un servizio di terze parti. Copia il risultato, scaricalo come file .txt, o invia l'output di nuovo all'input per appiattire ulteriormente un sottoinsieme annidato.

FAQ

Funziona con qualsiasi values.yaml, non solo quelli generati da Helm ?
Sì. Qualsiasi documento YAML ben formato funziona — lo strumento semplicemente percorre la sua struttura e l'appiattisce, quindi gestisce anche i file di configurazione semplici che vuoi convertire in coppie path=value.
Cosa succede agli array quando appiattisco ?
Ogni elemento dell'array ottiene il suo proprio percorso. Scegli la notazione tra parentesi quadre (tags[0]) per corrispondere alla sintassi --set di Helm, o la notazione di indice puntato (tags.0) se quella si adatta meglio alla tua pipeline.
Perché un valore avrebbe bisogno di escape ?
Helm --set tratta "." come separatore di percorso e "," come separatore di flag. Un valore che contiene legittimamente uno di questi caratteri — una stringa di versione come "1.2.3", o un elenco separato da virgole — deve avere questi caratteri sfuggiti con barra rovesciata, o Helm fraintenderà il flag.
Posso fare un viaggio di andata e ritorno di un elenco appiattito in YAML ?
Sì. Cambia l'opzione di direzione a "Ricomporre in YAML" e incolla le coppie path=value — una per riga o separate da virgole — per ricostruire la struttura annidata, compresi gli array.
Il mio file di valori viene caricato da qualche parte ?
No. L'appiattimento e la ricomposizione vengono eseguiti interamente nel tuo browser — il tuo YAML e i suoi valori non lasciano mai il tuo dispositivo.