Comment utiliser : Validateur YAML
- Collez votre YAML ou ouvrez un fichier
.yml/.yaml. - Les erreurs affichent la ligne, la colonne et un repère pointant l’emplacement exact.
- Examinez les avertissements de linting concernant les tabulations, les espaces en fin de ligne et les pièges de YAML 1.1.
- Copiez le YAML formaté ou son équivalent en JSON.
Pourquoi le YAML casse-t-il si facilement ?
Le YAML utilise l’indentation pour définir la structure : un seul espace mal placé peut modifier le sens du fichier ou le rendre invalide. Les erreurs les plus courantes :
| Erreur | Cause |
|---|---|
| bad indentation of a mapping entry | Une clé est indentée différemment de ses voisines |
| found a tab character | Le YAML interdit les tabulations pour l’indentation : utilisez des espaces |
| duplicated mapping key | La même clé apparaît deux fois dans un objet ; la plupart des analyseurs conservent silencieusement la dernière valeur |
| incomplete explicit mapping pair / unexpected end | Un guillemet, un crochet non fermé ou un deux-points dans une chaîne non entourée de guillemets |
| end of the stream or a document separator is expected | Contenu mal indenté après une liste ou un bloc |
Pièges de YAML 1.1 et 1.2
De nombreux outils (PyYAML, anciennes bibliothèques Ruby et Go) suivent encore YAML 1.1, où yes, no, on et off sont des booléens, et où 012 est en octal. C’est le fameux « problème norvégien » : le code pays NO devient false. YAML 1.2 traite ces valeurs comme des chaînes. Le linter signale ces valeurs afin que vous puissiez les mettre entre guillemets et obtenir le même résultat partout.
Fichiers multi-documents
Les manifestes Kubernetes combinent souvent plusieurs ressources séparées par ---. Chaque document est validé et apparaît dans la sortie JSON sous forme de tableau.
Valider le sens, pas seulement la syntaxe
Un YAML valide peut tout de même décrire une configuration erronée. Pour vérifier la structure selon un schéma, convertissez le contenu en JSON et utilisez le validateur JSON Schema ; pour les spécifications d’API, utilisez le validateur OpenAPI. Créez de nouveaux fichiers avec le générateur Docker Compose ou le générateur GitHub Actions, et convertissez les formats avec YAML vers JSON.
Aussi recherché comme : vérifier yaml, linter yaml, syntaxe yaml, yaml lint en ligne, formateur yaml, validateur yaml kubernetes.
Outils complémentaires : Validateur YAML
- JSON vers YAML — Collez du JSON et obtenez un YAML propre pour vos manifestes Kubernetes, Docker Compose, GitHub Actions ou tout autre fichier de configuration.
- Générateur YAML Kubernetes — Renseignez le nom, l’image et le port de votre application pour obtenir du YAML Kubernetes prêt pour la production : un Deployment avec sondes, limites de ressources et contexte de sécurité renforcé, ainsi que le Service, l’Ingress avec TLS, le ConfigMap, le Secret et le HorizontalPodAutoscaler que vous cochez, le tout dans un seul fichier prêt pour kubectl apply.
- Générateur de service systemd — Faites tourner votre application comme un véritable service Linux qui démarre au boot et redémarre après un plantage.
- Générateur GitLab CI — Choisissez votre environnement et obtenez un .gitlab-ci.yml fonctionnel : installation avec cache, jobs de lint et de tests, build avec artifacts, image Docker poussée dans le registre GitLab, ou déploiement sur GitLab Pages.