YAML-formaterer

Formater og valider YAML-filer direkte — komplekse nestede strukturer, ankere og aliaser støttes

Dele:

YAML-formaterer

Hvorfor formatere YAML-filer?

YAML er svært følsom for innrykksproblemer — ett ekstra mellomrom kan forårsake parse-feil eller stille datakorrupsjon. Kubernetes, Docker Compose, GitHub Actions og Ansible bruker YAML-konfigurasjonsfiler, og formateringsfeil kan blokkere hele distribusjoner.

📐

Normalisering av innrykk

Normaliserer blandet innrykk til konsekvent 2-mellomromsformat i hele dokumentet

Syntaksvalidering

Identifiserer innrykksfeil, blanding av tab/mellomrom og strukturelle problemer

Ankere og aliaser

Full støtte for YAML-ankere (&) og aliaser (*) for dokumentgjenbruk

Formater YAML i 3 trinn

1

Lim inn YAML

Lim inn et Kubernetes-manifest, GitHub Actions-arbeidsflyt eller YAML-konfigurasjonsfil

2

Formater og valider

Verktøyet validerer syntaksen og omformaterer automatisk med konsekvent innrykk

3

Kopier og distribuer

Kopier den formaterte YAML-en til filene, CI-pipelines eller distribusjonsverktøyene

Bruksområder for YAML-formatering

☸️

Kubernetes-manifester

Formater Deployment-, Service- og ConfigMap-YAML-filer før de brukes på klusteret

🔄

CI/CD-pipelines

Valider GitHub Actions-, GitLab CI- og CircleCI-arbeidsflyter for å forhindre pipelinefeil

📋

Ansible Playbooks

Formater og valider Ansible-oppgaver, variabler og inventar

🐳

Docker Compose

Sjekk at docker-compose.yml er korrekt formatert før docker compose up

Beste praksis for YAML

✓ Bruk mellomrom, ikke tabulatorer

YAML-spesifikasjonen forbyr uttrykkelig tabulatortegnet for innrykk. Konfigurer redigereren til å sette inn mellomrom ved Tab i YAML-filer.

✓ Bruk anførselstegn for spesialtegn

Strenger som inneholder : # [ ] { } eller begynner med spesialtegn må i anførselstegn slik at YAML ikke feiltolker dem.

✓ Bruk ankere for å redusere gjentagelse

YAML-ankere (&navn) og aliaser (*navn) lar deg gjenbruke verdier i dokumentet.

✓ Lint-sjekk før commit

Kjør yamllint eller bruk denne formatereren i en pre-commit-krok for å fange formateringsproblemer tidlig.

❓ Ofte stilte spørsmål

Hvorfor fungerer ikke YAML med tabulatorer i stedet for mellomrom?

YAML-spesifikasjonen forbyr uttrykkelig tabulatortegnet for innrykk fordi ulike redigerere viser tabulatorer med ulik bredde. Mellomrom gir konsekvent innrykk som alle YAML-parsere tolker likt.

Hva gjør YAML-ankere (&) og aliaser (*)?

Ankere definerer en gjenbrukbar blokk med &ankernavn; aliaser refererer til den med *ankernavn. Slik kan du definere en verdi én gang og bruke den mange steder.

Hva er forskjellen mellom YAML og JSON?

YAML er et supersett av JSON — gyldig JSON er også gyldig YAML. YAML legger til støtte for kommentarer, ankere, flerlinjestrenger og mer lesbar syntaks.

Når bør jeg velge YAML fremfor TOML for konfigurasjon?

YAML har bredere verktøystøtte (Kubernetes, Ansible, de fleste CI-systemer) og kan uttrykke komplekse nestede strukturer kortfattet. I DevOps-konfigurasjon er YAML standarden.