Validateur YAML
Valide la syntaxe YAML et visualise les résultats.
Présentation
Le validateur YAML contrôle la syntaxe en direct au fil de la saisie et, lorsque
le document est valide, affiche la structure analysée sous forme de JSON mis en
forme. Il utilise js-yaml, l’analyseur que l’on retrouve dans d’innombrables
chaînes d’outils Node.js : les erreurs et l’inférence de types correspondent donc
à ce que fera votre pipeline de build. Utile pour déboguer des configurations de
CI (GitHub Actions, GitLab CI), des manifestes Kubernetes et des fichiers Docker
Compose avant de les valider.
Utilisation
- Collez ou saisissez votre document dans le champ YAML.
- Lisez la ligne d’état en dessous :
Valid YAMLen cas de succès, ou le message d’erreur de l’analyseur — ligne et colonne du problème incluses — en cas d’échec. - Lorsque le document est valide, examinez le panneau Parsed (as JSON) pour confirmer la structure et les types déduits.
Exemples
Saisie :
server:
host: localhost
port: 8080
Parsed (as JSON) : { "server": { "host": "localhost", "port": 8080 } } — notez que port est un nombre, pas une chaîne.
Une tabulation utilisée pour l’indentation produit une erreur nommant la ligne fautive, puisque le YAML interdit les tabulations dans l’indentation.
Remarques
Le validateur analyse un document unique ; les flux multi-documents séparés par
--- ne sont pas entièrement rapportés. La validation ne couvre que la syntaxe —
elle ne peut pas savoir si les clés sont correctes pour l’outil qui consomme le
fichier (cela demande un linter conscient du schéma propre à ce format).
Les documents dont les ancres et les alias se référencent de manière
multiplicative sont refusés avant l’analyse. Quelques centaines d’octets d’alias
imbriqués peuvent se déployer en centaines de mégaoctets — 253 octets atteignant
22,8 Mo se construit facilement — ce qui figerait l’onglet. L’usage ordinaire des
ancres, y compris les clés de fusion <<: que l’on trouve partout dans Docker
Compose et les configurations de CI, n’est pas affecté. Une entrée de plus de
2 Mo est également refusée.