doc: example for fill and conventions

This commit is contained in:
Emmanuel Garette 2021-12-11 16:33:55 +01:00
parent 8cf8c9b8eb
commit 3dca1349a8
22 changed files with 287 additions and 222 deletions

View file

@ -11,6 +11,7 @@ Rougail est un bibliothèque python3 qui permet de charger des dictionnaires (fi
- [Les dictionnaires](dictionary/rougail.md) - [Les dictionnaires](dictionary/rougail.md)
- [Les dictionnaires extra](dictionary/extra.md) - [Les dictionnaires extra](dictionary/extra.md)
- [Convention d'écriture d'un dictionnaire](dictionary/convention.md)
### Les variables ### Les variables

View file

@ -0,0 +1,13 @@
# Convention de rédaction d'un dictionnaire
## Ordonnancement du dictionnaire
L'ordre des informations mise dans le dictionnaire est idéalement :
- services
- variables
- constraintes
## Le nom d'espace
Le nom d'espace dans un dictionnaire est de deux espaces.

View file

@ -4,3 +4,4 @@ Une variable calculée est une variable donc sa valeur est le résultat d'une fo
- [Valeur calculée de la variable](value.md) - [Valeur calculée de la variable](value.md)
- [Réfinition](redefine.md) - [Réfinition](redefine.md)
- [Exemples de calcule](examples.md)

48
doc/fill/examples.md Normal file
View file

@ -0,0 +1,48 @@
# Exemples de calcule
## Calculer les noms de modèle à généré à partir d'une variable
Créeons deux variables multiples, une pour accueillir la liste des éléments du nom variable (ici `zones_list`), la seconde étant le nom du fichier calculé (ici `netwokd_configurations`) :
```
<variables>
<variable name="zones_list" type="string" multi="True">
<value>zone1</value>
<value>zone2</value>
<value>zone3</value>
</variable>
<variable name="netwokd_configurations" type="filename" multi="True" hidden="True"/>
</variables>
```
Calculons la valeur de la seconde variable à partir de la première :
```
<constraints>
<fill name="calc_value">
<param>/systemd/network/10-</param>
<param type="variable">zones_list</param>
<param>-risotto.network</param>
<param name="join"></param>
<param name="multi" type="boolean">True</param>
<target>netwokd_configurations</target>
</fill>
</constraints>
```
Le contenu de la variable `netwokd_configurations` sera alors :
- /systemd/netword/10-zone1/risotto.network
- /systemd/netword/10-zone2/risotto.network
- /systemd/netword/10-zone3/risotto.network
Enfin déclarer une balise file en utilisant ces deux variables :
```
<services>
<service name="systemd-networkd">
<file file_type="variable" source="network" variable="zones_list">netwokd_configurations</file>
</service>
</services>
```

View file

@ -152,7 +152,9 @@ Attention trois attributs ne sont redéfinisable :
Créons notre variable : Créons notre variable :
```
<variable name="my_variable"/> <variable name="my_variable"/>
```
Et redéfinisons là : Et redéfinisons là :