Two main components: Anchor &
which defines a chunk of configuration and Alias *
used to refer to that chunk elsewhere.
Simple example, create dwarfs.yaml
:
cat<<EOF>dwarfs.yaml - &dwarf Gimli - Dain - Thorin - *dwarf - Balin - *dwarf EOF
When an YAML parser reads dwarfs.yaml
the alias will render the value identified by the anchor.
An anchor can be referenced by multiple aliases, and also we can merge maps (to add more values, or override existing ones) i.e.
cat<<EOF>dwarfs.yaml # anchor Gloin: &dwarf_basics role: Member hood_color: white skills: &skills_base - battle - mining # alias and merge map Oin: <<: *dwarf_basics role: Leader EOF
In dwarfs.yaml
file, Gloin
is being used as base definition. Oin
uses <<
as key, which indicates that key-values from another mapping should be merged. Important note role
value will be override in Oin
.
Top comments (0)