- infos = Information about the yambi plugin is in keys below
- infos/author = René Schwaiger sanss.nosp@m.ecou.nosp@m.rs@me.nosp@m..com
- infos/licence = BSD
- infos/needs = directoryvalue yamlsmith
- infos/provides = storage/yaml
- infos/recommends =
- infos/placements = getstorage
- infos/status = maintained unittest preview experimental unfinished nodoc concept discouraged
- infos/metadata =
- infos/description = This storage plugin use a parser generated by Bison to read YAML files
YAMBi
Introduction
This plugin uses Bison to generate a parser for the YAML serialization format.
Dependencies
The plugin requires Bison (3.0 or later).
Examples
Mappings
2 sudo kdb mount config.yaml user/tests/yambi yambi
4 kdb set user/tests/yambi 'Mount Point'
5 kdb get user/tests/yambi
8 kdb set user/tests/yambi/bambi 'Mule Deer'
9 kdb get user/tests/yambi/bambi
12 kdb set user/tests/yambi/thumper 'Rabbit'
13 kdb get user/tests/yambi/thumper
16 kdb set user/tests/yambi/bambi/baby 'Bobby Stewart'
17 kdb set user/tests/yambi/bambi/young 'Donnie Dunagan'
18 kdb set user/tests/yambi/bambi/adolescent 'Hardie Albright'
19 kdb set user/tests/yambi/bambi/adult 'John Sutherland'
21 kdb get user/tests/yambi/bambi/baby
24 kdb ls user/tests/yambi
26 #> user/tests/yambi/bambi
27 #> user/tests/yambi/bambi/adolescent
28 #> user/tests/yambi/bambi/adult
29 #> user/tests/yambi/bambi/baby
30 #> user/tests/yambi/bambi/young
31 #> user/tests/yambi/thumper
34 kdb rm -r user/tests/yambi
35 sudo kdb umount user/tests/yambi
Arrays
2 sudo kdb mount config.yaml user/tests/yambi yambi
4 kdb set user/tests/yambi/friends
5 kdb set user/tests/yambi/friends/#0 Thumper
6 kdb set user/tests/yambi/friends/#1 Flower
8 # Retrieve last array index
9 kdb getmeta user/tests/yambi/friends array
12 kdb get user/tests/yambi/friends/#0
14 kdb get user/tests/yambi/friends/#1
18 kdb rm -r user/tests/yambi
19 sudo kdb umount user/tests/yambi
Error Messages
```
Mount plugin
sudo kdb mount config.yaml user/tests/yambi yambi
Manually add data containing a syntax error
printf – 'Thumper: - Eating greens is a special treat.
' > kdb file user/tests/yambi
printf – ' - It makes long ears and great big feet.
' >> kdb file user/tests/yambi
printf – '- But it sure is awful stuff to eat.' >> kdb file user/tests/yambi
Try to retrieve data
kdb get user/tests/yambi/Thumper/#2
RET: 5
STDERR: .*config.yaml:3:1: syntax error, unexpected ELEMENT, expecting MAP_END or KEY.*
Fix syntax error
printf – 'Thumper: - Eating greens is a special treat.
' > kdb file user/tests/yambi
printf – ' - It makes long ears and great big feet.
' >> kdb file user/tests/yambi
printf – ' - But it sure is awful stuff to eat.' >> kdb file user/tests/yambi
Retrieve data
kdb get user/tests/yambi/Thumper/#2 #> But it sure is awful stuff to eat.
Undo modifications
kdb rm -r user/tests/yambi sudo kdb umount user/tests/yambi ```
Limitations
The plugin supports the same limited YAML syntax as Yan LR.
- The plugin always assumes UTF-8 encoded data.