Formater YAML

Natychmiastowe formatowanie i walidacja plików YAML — obsługa złożonego zagnieżdżania, kotwic i aliasów

Udział:

Formater YAML

Dlaczego formatować pliki YAML?

YAML jest niezwykle wrażliwy na wcięcia — jeden dodatkowy spacja może powodować błędy parsowania lub cichą korupcję danych. Narzędzia takie jak Kubernetes, Docker Compose, GitHub Actions i Ansible używają plików konfiguracyjnych YAML, gdzie błędy formatowania mogą blokować całe wdrożenia. Nasz formater waliduje składnię, normalizuje wcięcia i zapewnia, że Twój YAML jest zawsze poprawny.

📐

Normalizacja wcięć

Normalizuje mieszane wcięcia do spójnego formatu 2-spacji w całym dokumencie

Walidacja składni

Wykrywa błędy wcięć, mieszane tabulatory/spacje i problemy strukturalne przed błędami produkcyjnymi

Kotwice i aliasy

Pełna obsługa kotwic YAML (&) i aliasów (*) dla wielokrotnego użycia dokumentów i konfiguracji DRY

Jak formatować YAML w 3 krokach

1

Wklej YAML

Wklej manifest Kubernetes, przepływ pracy GitHub Actions lub dowolny plik konfiguracyjny YAML

2

Formatuj i waliduj

Narzędzie waliduje składnię i automatycznie reformatuje ze spójnymi wcięciami

3

Skopiuj i wdróż

Skopiuj sformatowany YAML do pliku, potoku CI lub narzędzia do wdrażania

Przypadki użycia formatowania YAML

☸️

Manifesty Kubernetes

Formatuj pliki YAML Deployment, Service i ConfigMap przed zastosowaniem ich na klastrze

🔄

Potoki CI/CD

Waliduj przepływy pracy GitHub Actions, GitLab CI i CircleCI, aby unikać błędów potoku

📋

Playbooki Ansible

Formatuj i waliduj zadania, zmienne i inwentarze Ansible dla czystego kodu infrastruktury

🐳

Docker Compose

Upewnij się, że pliki docker-compose.yml są poprawnie sformatowane przed uruchomieniem docker compose up

Najlepsze praktyki YAML

✓ Używaj spacji, nigdy tabulatorów

YAML surowo zabrania tabulatorów do wcięć. Zawsze konfiguruj edytor, aby wstawiał spacje po naciśnięciu Tab w plikach YAML.

✓ Używaj cudzysłowów dla znaków specjalnych

Ciągi zawierające : # [ ] { } lub zaczynające się od znaków specjalnych muszą być ujęte w cudzysłowy, aby YAML nie interpretował ich błędnie.

✓ Używaj kotwic, aby zmniejszyć duplikację

Kotwice YAML (&nazwa) i aliasy (*nazwa) pozwalają na wielokrotne użycie wartości w dokumencie, redukując powtórzenia w złożonych konfiguracjach.

✓ Sprawdzaj przed commitem

Uruchom yamllint lub użyj tego formatera w haku pre-commit, aby wykrywać problemy z formatowaniem zanim trafią do repozytorium.

❓ Często zadawane pytania

Dlaczego YAML nie działa z tabulatorami zamiast spacji?

Specyfikacja YAML wyraźnie zabrania znaków tabulatora do wcięć, ponieważ różne edytory wyświetlają tabulatory z różnymi szerokościami. Spacje zapewniają spójne, jednoznaczne wcięcia, które wszystkie parsery YAML mogą interpretować identycznie.

Co robią kotwice (&) i aliasy (*) w YAML?

Kotwice definiują blok wielokrotnego użycia z &nazwa-kotwicy:, a aliasy odwołują się do niego z *nazwa-kotwicy. Pozwala to definiować wartości raz i używać ich wielokrotnie, utrzymując konfiguracje DRY.

Jaka jest różnica między YAML a JSON?

YAML jest nadzbiorem JSON — każdy prawidłowy JSON jest również prawidłowym YAML. YAML dodaje obsługę komentarzy, kotwic, ciągów wieloliniowych i bardziej czytelną składnię. JSON jest lepszy do wymiany danych między maszynami; YAML jest bardziej odpowiedni dla konfiguracji edytowanych przez ludzi.

Dlaczego wybrać YAML zamiast TOML do konfiguracji?

YAML ma szersze wsparcie narzędziowe (Kubernetes, Ansible, większość systemów CI) i może zwięźle reprezentować złożone zagnieżdżone struktury. TOML jest prostszy i mniej podatny na błędy przy podstawowych konfiguracjach. Dla konfiguracji DevOps YAML jest standardem.