Base de connaissances — Définition
YAML
Découvrez YAML en développement Web : syntaxe, fichiers de configuration, sérialisation des données et intégration aux flux de travail Web modernes.
Qu’est-ce que YAML?
YAML (YAML Ain’t Markup Language) est un format de sérialisation de données lisible par les humains, largement utilisé en développement Web, dans les fichiers de configuration et dans les flux de travail DevOps. Contrairement à JSON ou à XML, YAML mise sur la lisibilité grâce à une syntaxe épurée fondée sur l’indentation. Pour les entreprises de Toronto qui travaillent avec des technologies Web modernes, comprendre YAML est essentiel pour gérer les configurations WordPress, les pipelines CI/CD et les paramètres de déploiement.
Les bases de la syntaxe YAML
Paires clé-valeur
YAML repose sur de simples paires clé-valeur séparées par un deux-points. La clé vient en premier, suivie d’un deux-points et d’une espace, puis de la valeur. L’indentation (avec des espaces, pas des tabulations) définit la structure et la hiérarchie. YAML est ainsi beaucoup plus lisible que JSON pour les fichiers de configuration.
Listes et tableaux
En YAML, chaque élément d’une liste commence par un trait d’union. Les listes imbriquées utilisent une indentation supplémentaire. Ce format sert couramment à définir plusieurs valeurs, comme des configurations de serveur, des domaines autorisés ou des cibles de déploiement.
Chaînes sur plusieurs lignes
YAML prend en charge plusieurs formats pour le contenu sur plusieurs lignes. La barre verticale (|) préserve les sauts de ligne et le saut de ligne final, tandis que le signe supérieur à (>) replie les lignes en une seule, séparées par des espaces. Ces formats sont utiles pour intégrer des scripts, du contenu HTML ou de longues descriptions dans des fichiers de configuration.
Usages courants en développement Web
Configuration WordPress
Les outils modernes de développement WordPress utilisent YAML pour la configuration. WP-CLI accepte des fichiers de configuration YAML, et des outils comme Bedrock et Trellis s’en servent pour les paramètres propres à chaque environnement. Si vous utilisez des flux de déploiement WordPress avancés, la configuration YAML fait partie de votre chaîne d’outils.
Pipelines CI/CD
GitHub Actions, GitLab CI et CircleCI utilisent tous YAML pour définir les pipelines de compilation et de déploiement. Ces fichiers de configuration précisent quand exécuter les tests, comment compiler les ressources et où déployer. Maîtriser la syntaxe YAML est essentiel pour automatiser votre processus de déploiement et maintenir des cycles de mise en production fiables.
Docker et conteneurs
Docker Compose utilise YAML (docker-compose.yml) pour définir des applications multiconteneurs. Un seul fichier YAML peut décrire toute votre pile applicative (serveur Web, base de données, couche de cache) et la lancer en une seule commande. Cela simplifie le développement local et assure la cohérence d’un environnement à l’autre.
YAML, JSON ou XML
- YAML : le plus lisible, accepte les commentaires; idéal pour les fichiers de configuration rédigés par des humains
- JSON : le plus largement pris en charge; idéal pour l’échange de données entre systèmes et API
- XML : le plus structuré, avec validation par schéma; idéal pour les documents et les hiérarchies de données complexes
Choisissez YAML pour la configuration, JSON pour l’échange de données par API et XML pour le balisage de documents. La plupart des projets Web modernes combinent les trois.
Foire aux questions
Que signifie YAML?
YAML est un acronyme récursif qui signifie « YAML Ain’t Markup Language » (YAML n’est pas un langage de balisage). Au départ, il voulait dire « Yet Another Markup Language » (encore un autre langage de balisage), mais le nom a été changé pour souligner que YAML est un format de sérialisation de données, et non un langage de balisage comme HTML ou XML.
YAML est-il la même chose que JSON?
Non, même s’ils sont apparentés. JSON est un sous-ensemble de YAML : tout JSON valide est aussi du YAML valide. YAML offre toutefois des fonctions que JSON n’a pas, notamment les commentaires, les chaînes sur plusieurs lignes et les ancres pour réutiliser du contenu. YAML convient mieux à la configuration rédigée par des humains; JSON, à l’échange de données entre machines.
Pourquoi l’indentation compte-t-elle autant en YAML?
YAML utilise l’indentation pour définir la structure, plutôt que des accolades ou des balises. C’est ce qui le rend très lisible, mais une indentation incorrecte provoque des erreurs. Utilisez toujours des espaces (pas des tabulations) pour indenter votre YAML, et gardez le même niveau d’indentation dans tout le fichier.
Ressources connexes
Pour aller plus loin : Spécification YAML — YAML.org.

