# YAML-Validator

Prüfe YAML auf Syntaxfehler, bevor sie ein Deployment oder eine CI-Pipeline unterbrechen. Der Validator analysiert jedes Dokument in der Eingabe mit einem YAML-1.2-Parser. Er weist doppelte Schlüssel, zur Einrückung verwendete Tabs und unkontrollierte Alias-Erweiterungen zurück und meldet den ersten Fehler mit Dokument, Zeile und Spalte. Bei gültigen Eingaben zeigt er die Anzahl der Dokumente, den Typ auf oberster Ebene jedes Dokuments und etwaige Warnungen an. Entwickelt für Kubernetes-, Docker-Compose- und Konfigurationsautoren.

## Häufig gestellte Fragen

### Was prüft der YAML-Validator?

Er analysiert die vollständige YAML-Syntax: Einrückungen, Block- und Flow-Collections, zitierte und einfache Skalare, Anker, Aliase, Tags und Direktiven. Doppelte Schlüssel in einem Mapping gelten ebenfalls als Fehler. Das Ergebnis ist entweder eine Bestätigung mit einer kurzen Zusammenfassung oder der erste Fehler mit seiner Position und einer Erklärung.

### Welche Version von YAML wird verwendet?

Der Validator verwendet das YAML-Kernschema 1.2, die aktuelle Version der Spezifikation. In Version 1.2 sind Wörter wie yes, no, on und off gewöhnliche Zeichenketten und keine booleschen Werte, daher verursachen sie nie einen Fehler. Dokumente für YAML-Tools der Version 1.1 werden weiterhin akzeptiert, solange ihre Syntax gültig ist.

### Warum werden doppelte Schlüssel als Fehler gemeldet?

Die YAML-Spezifikation verlangt eindeutige Schlüssel in einer Zuordnung. Viele Parser behalten stillschweigend den letzten Wert bei und verbergen so Konfigurationsfehler, etwa wenn eine Einstellung zweimal definiert ist. Der Validator nennt Zeile und Spalte des wiederholten Schlüssels, damit du entscheiden kannst, welchen Wert du beibehältst.

### Wie werden Zeilen-, Spalten- und Dokumentnummern gezählt?

Zeilen und Spalten beginnen bei 1 am Anfang der eingefügten Eingabe. Dokumente werden in der Reihenfolge ihres Auftretens gezählt und durch ----Zeilen getrennt. Das erste Dokument ist also Dokument 1. Die Position zeigt an, wo der Parser das Problem erkannt hat. Das kann direkt nach dem eigentlichen Fehler sein.

### Kann ich mehrere YAML-Dokumente gleichzeitig validieren?

Ja. Trenne die Dokumente wie in einem Kubernetes-Manifest mit mehreren Dokumenten durch ---; dann wird jedes Dokument geparst. Ein gültiges Ergebnis zeigt die Anzahl der Dokumente und den obersten Typ jedes einzelnen.

### Was bedeutet der oberste Typ?

Er gibt an, was das jeweilige Dokument an der Wurzel enthält: eine Zuordnung von Schlüsseln und Werten, eine Sequenz von Elementen, einen einzelnen Skalarwert oder nichts. Die meisten Konfigurationsdateien sind Zuordnungen, während Ressourcenlisten oft Sequenzen sind. Ein falscher Typ deutet hier meist auf einen falsch platzierten Bindestrich oder eine fehlerhafte Einrückung hin.

### Was sind Warnungen?

Warnungen betreffen Probleme, die das Parsen nicht verhindern, zum Beispiel ein dem Parser unbekanntes Tag, das dann als einfacher Wert gelesen wird. Jede Warnung wird mit Zeile und Spalte aufgeführt, bis zu 20 Stück. Ein Dokument mit Warnungen gilt weiterhin als gültig.

### Warum werden Tabulatoren abgelehnt?

YAML verbietet Tabulatorzeichen bei der Einrückung, da ihre Breite nicht eindeutig ist. Ersetze die Tabulatoren am Anfang der gemeldeten Zeile durch Leerzeichen und halte die Einrückung in den benachbarten Zeilen einheitlich. Tabulatoren innerhalb von Werten und Zeichenketten in Anführungszeichen sind erlaubt.

### Ist der Validator gegen Alias-Bomben geschützt?

Ja. Aliase dürfen höchstens 100 Mal erweitert werden. Ein Dokument, das Aliase so vervielfacht, dass Gigabytes an Daten entstehen, oft als „Billion Laughs“-Angriff bezeichnet, wird daher als ungültig gemeldet, statt den Speicher aufzubrauchen. Bei der normalen Verwendung von Ankern und Aliasen für gemeinsame Einstellungen bleibt die Erweiterung weit unter diesem Grenzwert.

### Prüft der Validator gegen ein Schema wie Kubernetes oder OpenAPI?

Nein, er prüft nur Syntax und Struktur, nicht, ob Schlüssel und Werte zu einem bestimmten Schema passen. Eingaben dürfen bis zu 5 MiB groß sein. Um gültiges YAML in JSON, TOML oder ein anderes Format umzuwandeln, verwende den Datenformat-Konverter.

Deine Anzeige hier?

[Schreib uns eine E-Mail](mailto:hi@dennn.is?subject=Werbung%20auf%20OneClick%20Pro)

[Anzeige Die agentenfähige Plugin-Suite für WordPress.](https://sleekwp.com/?ref=oneclickpro)
