YAML Syntax
YAML Syntax
Eine YAML Datei fängt immer mit 3 strichen an.
---
YAML ist eine Sprache die auf Listen und und Wörterbüchern basiert. Es ist eine Datei zur Daten Seriliation.
um zu überprüfen ob die YAML Datei Syntax richtig ist ohne sie Ansible spezefisch zPrüfen können wir das hier tun
https://www.yamllint.com/
Am Anfang steht der name und nach dem Doppelpunkt der Wert.
Werte können String, ganzezahlen floats und bool sein (true/false)
Ein Wörterbucheintrag sieht so aus:
---
meinevariablennamen: wert
...
Eine einfache Mitarbeiterakte. So kann man schachteln. Einfach einen Objektnamen als übergeordnet objekt deklarieren, also nur mit Doppelpunkt ohne Wert. Die Wörterbucheinträge darunter legen. Immer mit zwei Leerzeichen eingerückt.
martin:
name: Martin Dev
job: Developer
skill: Elite
Ist ein Wert angeben, so müssen die unterwerte direkt ohne zwei Einrücken druntergeschrieben werden
martin: wert
name: Martin Dev
job: Developer
skill: Elite
Listen:
Listen beginnen mit einem Bindestrich und einem Leerzeichen.
Die Raute ist ein kommentar
---
# Eine Liste mit leckeren Früchten
- Apple
- Orange
- Strawberry
- Mango
...
Nun können wir mit dem oben gelernten Mitarbeiterdatensätze anlegen. Denn das Übergeordneteobjekt in unserem Beispiel oben, machen wir zu einer Liste.
So sind auch kompliziertere Datenstrukturen möglich,z.B.Listen von Wörterbüchern,Wörterbücher,deren Werte Listen sind,oder eine Mischung aus beidem:
# Mitarbeiterdatensätze
- martin:
name: Martin D'vloper
job: Developer
skills:
- python
- perl
- pascal
- tabitha:
name: Tabitha Bitumen
job: Developer
skills:
- lisp
- fortran
- erlang
Eine Liste muss immer ein übergordnetes Objekt haben. Im Oberen Beispiel sind die
---
Striche das root / übergeordnete Objekt für
- martin
- tabitha
Innerhalb der Akte ist
skills:
das übergeordnete Objekt für die Listeneinträge
- lisp
- fortran
- erlang
usw.
Beispiel:
Die Übergeordneten Objekte liste 1-3 sind uniqe und dürfen nicht mehrfach vorkommen.
innerhalb eine Liste dfarf ein Wert mehrfach vorkommen, wenn es ein listen item ist.
Dies erkennt man an dem minus davor.
---
- name: irgendwas
variable: wert
variable2: wert
liste8:
- package: null
- var1: 1
- package: null
- var2: 2
variable3: wert
variable4: wert
liste6:
- dieserwertkannwiederdoppeltvorkommen
- dieserwertkannwiederdoppeltvorkommen
variable5: wert
variable6: wert
nocheinevariable: null
variableideinmalvorkommt: wert
#hier gillt eine ausnahme, hier müssen zwei leerzeichen rein, da dieser wert einen haupteintrag darstellt und somit nur einmal vorkopmmen darf
listemitwert: wert
- eintrag1
- eintrag2
liste5:
- dieserwertkannwiederdoppeltvorkommen
- dieserwertkannwiederdoppeltvorkommen
- dieserwertkannwiederdoppeltvorkommen