Outils pour utilisateurs

Outils du site


dev:yaml

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
dev:yaml [2021/12/16 12:55] yoanndev:yaml [2021/12/21 10:42] (Version actuelle) – Ajout de références yoann
Ligne 4: Ligne 4:
  
 **YAML** signifie **YAML** **A**in't **M**arkup **L**anguage (acronyme récursif: YAML n'est pas un langage à balise). Il a pour but de présenter les données en s'appuyant sur un formalisme facilement lisible par l'homme en limitant au maximum les caractères structurant les données. Il est utilisé par les fichiers de configuration texte de nombreux outils. **YAML** signifie **YAML** **A**in't **M**arkup **L**anguage (acronyme récursif: YAML n'est pas un langage à balise). Il a pour but de présenter les données en s'appuyant sur un formalisme facilement lisible par l'homme en limitant au maximum les caractères structurant les données. Il est utilisé par les fichiers de configuration texte de nombreux outils.
 +
 +Les objectifs recherchés par YAML comprennent notamment:
 +
 +  * Lisibilité: YAML doit être facilement lisible par un opérateur humain;
 +  * Interopérabilité: les données décrites en YAML doivent être portables sur différents langages de programmation;
 +  * Les structures YAML doivent avoir des correspondances avec les structures de données des langages dynamiques;
 +  
 +
  
 ===== Syntaxe ===== ===== Syntaxe =====
 +
 +==== Structures de données ====
 +
 +Les primitives:
 +  * Mappings ou Maps (hashes/dictionnaires),
 +  * Sequences ou (arrays/lists),
 +  * Scalaires (scalars) comprenant les chaînes  de caractères et les nombres (strings/numbers)
  
 ==== Ancres et balises ==== ==== Ancres et balises ====
  
 +===== yamllint : Analyseur statique =====
 +
 +**yamllint** est un analyseur statique, il permet de vérifier la syntaxe des fichiers YAML. Pour l'installer:
 +
 +<code bash>
 +apt-get install yamllint
 +</code>
 +
 +Pour lancer une analyse syntaxique, on passe le fichier en argument:
 +<code bash>
 +yamllint --strict config.yml
 +config.yml
 +  2:1       warning  missing document start "---"  (document-start)
 +  33:28     error    trailing spaces  (trailing-spaces)
 +  39:12     error    too many spaces after colon  (colons)
 +  40:1      error    too many blank lines (1 > 0)  (empty-lines)
 +</code>
 +
 +source: https://yamllint.readthedocs.io/en/latest/
  
 ===== Référence ===== ===== Référence =====
Ligne 14: Ligne 48:
   * http://yaml.org/spec/   * http://yaml.org/spec/
   * https://www.educative.io/blog/advanced-yaml-syntax-cheatsheet   * https://www.educative.io/blog/advanced-yaml-syntax-cheatsheet
 +  * https://www.redhat.com/sysadmin/yaml-tips 
 +  * https://www.redhat.com/sysadmin/yaml-beginners
  
dev/yaml.1639659350.txt.gz · Dernière modification : 2021/12/16 12:55 de yoann