update link

This commit is contained in:
egarette@silique.fr 2025-11-07 06:45:46 +01:00
parent bc0de749c7
commit aca97a3e92
2 changed files with 20 additions and 20 deletions

View file

@ -13,9 +13,9 @@ Getting started
- We assume that Rougail's library is :ref:`installed <installation>` on your computer. - We assume that Rougail's library is :ref:`installed <installation>` on your computer.
- If you want to follow with this tutorial with the help of the corresponding :tutorial:`Rougail tutorial git repository <>`, - If you want to follow with this tutorial with the help of the corresponding :tutorial:`Rougail tutorial git repository <>`,
this workshop page corresponds to the tags v1.1_000 to v1.1_011. this workshop page corresponds to the tags v1.1_000 to v1.1_004.
.. of :tutorial:`the Git repository <src/tag/v1.1_010>`. .. of :tutorial:`the Git repository <src/tag/v1.1_001>`.
Making a structure file Making a structure file
------------------------- -------------------------
@ -57,7 +57,7 @@ A variable is defined at a minimum by its name.
This is a first Rougail variable in a Rougail dictionnary: This is a first Rougail variable in a Rougail dictionnary:
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_010/firefox/00-proxy.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_001/firefox/00-proxy.yml
:language: yaml :language: yaml
:caption: A Rougail dictionnary file with only one variable :caption: A Rougail dictionnary file with only one variable
:name: RougailDictionaryFirstVariableName :name: RougailDictionaryFirstVariableName
@ -66,7 +66,7 @@ This is a first Rougail variable in a Rougail dictionnary:
--- ---
proxy_mode: proxy_mode:
:download:`download this file <https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_010/firefox/00-proxy.yml>` :download:`download this file <https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_001/firefox/00-proxy.yml>`
- If we run the Rougail CLI utility command - If we run the Rougail CLI utility command
@ -78,7 +78,7 @@ This is a first Rougail variable in a Rougail dictionnary:
we will actually have an error: we will actually have an error:
.. raw:: html .. raw:: html
:url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_010/config/01/output_ro.html :url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_001/config/01/output_ro.html
:class: error-box :class: error-box
.. ..
@ -107,7 +107,7 @@ Rougail waits for the `proxy_mode` configuration option's value to be set.
Let's add a variable's description, which is not mandatory but which is a good practice: Let's add a variable's description, which is not mandatory but which is a good practice:
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_011/firefox/00-proxy.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_002/firefox/00-proxy.yml
:language: yaml :language: yaml
:caption: A Rougail dictionnary file with a variable and a description :caption: A Rougail dictionnary file with a variable and a description
:name: RougailStructFirstVariableDescription :name: RougailStructFirstVariableDescription
@ -129,7 +129,7 @@ We need to set a value to this `proxy_mode` variable. A first way to do it is *t
So let's define a variable with a description -- **and a default value** So let's define a variable with a description -- **and a default value**
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_012/firefox/00-proxy.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_003/firefox/00-proxy.yml
:language: yaml :language: yaml
:caption: A rougail dictionnary file with a default value for the variable :caption: A rougail dictionnary file with a default value for the variable
:name: RougailDictionaryVariableDefault :name: RougailDictionaryVariableDefault
@ -202,7 +202,7 @@ he is responsible of other files called the :term:`user data file`\ s.
So for example if the integrator has not set any default value in his structure file, So for example if the integrator has not set any default value in his structure file,
the operator can do it like this: the operator can do it like this:
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_012/config/02/config.yaml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_003/config/02/config.yaml
:language: yaml :language: yaml
:caption: A Rougail user datas file :file:`config/config.yml`, with a default value set. :caption: A Rougail user datas file :file:`config/config.yml`, with a default value set.
:name: RougailConfigDefaultValue :name: RougailConfigDefaultValue
@ -260,7 +260,7 @@ In our firefox use case, the real type of the `proxy_mode` variable will be now
When a variable's setting is "choice" (`type: choice`), it means that When a variable's setting is "choice" (`type: choice`), it means that
there is a list of available values that can be selected. there is a list of available values that can be selected.
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_013/firefox/00-proxy.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_004/firefox/00-proxy.yml
:linenos: :linenos:
:language: yaml :language: yaml
:caption: The real :file:`firefox/proxy.yml` Rougail dictionnary file with a choice type :caption: The real :file:`firefox/proxy.yml` Rougail dictionnary file with a choice type
@ -288,7 +288,7 @@ In our firefox use case, the real type of the `proxy_mode` variable will be now
We have an output like this one: We have an output like this one:
.. raw:: html .. raw:: html
:url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/commit/v1.1_013/config/01/output_ro.html :url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/commit/v1.1_004/config/01/output_ro.html
:class: output :class: output
.. ..
@ -341,7 +341,7 @@ We have the list of the possible (authorized) values:
**Structure description file** **Structure description file**
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_013/firefox/00-proxy.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_004/firefox/00-proxy.yml
:linenos: :linenos:
:language: yaml :language: yaml
:caption: A Rougail dictionnary file with a variable named `proxy_mode`, with a default value. :caption: A Rougail dictionnary file with a variable named `proxy_mode`, with a default value.

View file

@ -19,7 +19,7 @@ Group variables inside families
In the structure description file, we have: In the structure description file, we have:
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_013/firefox/00-proxy.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_004/firefox/00-proxy.yml
:linenos: :linenos:
:language: yaml :language: yaml
:caption: The `proxy_mode` choice type variable in the :file:`firefox/00-proxy.yml` structure file :caption: The `proxy_mode` choice type variable in the :file:`firefox/00-proxy.yml` structure file
@ -56,7 +56,7 @@ Creating a new family
Let's create a family named `manual` which obviously corresponds to the proxy's manual configuration choice. Let's create a family named `manual` which obviously corresponds to the proxy's manual configuration choice.
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_020/firefox/10-manual.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_010/firefox/10-manual.yml
:language: yaml :language: yaml
:caption: A family structure file description named `manual` in a :file:`firefox/10-manual.yml` file :caption: A family structure file description named `manual` in a :file:`firefox/10-manual.yml` file
:name: RougailManualFamily :name: RougailManualFamily
@ -83,7 +83,7 @@ We can see that we have defined a :term:`family` here, and this family is *empty
Creating a family hierarchy of family container types is very easy, here is an example: Creating a family hierarchy of family container types is very easy, here is an example:
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_021/firefox/10-manual.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_011/firefox/10-manual.yml
:language: yaml :language: yaml
:caption: A rougail structure description file with a hierarchy. :caption: A rougail structure description file with a hierarchy.
:name: RougailFirstFamilyHierarchy :name: RougailFirstFamilyHierarchy
@ -106,7 +106,7 @@ Putting a variable inside of a family or a sub family
Let's create a variable in the `http_proxy` family. Let's create a variable in the `http_proxy` family.
This time, the type of this new variable is a `domainname` type: This time, the type of this new variable is a `domainname` type:
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_022/firefox/10-manual.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_012/firefox/10-manual.yml
:language: yaml :language: yaml
:caption: An `address` variable in the `http_proxy` family :caption: An `address` variable in the `http_proxy` family
:name: RougailVariableInSubFamily :name: RougailVariableInSubFamily
@ -145,7 +145,7 @@ Now we need to set a value for the :confval:`address` variable,
otherwise we will get an error if we try to access this variable: otherwise we will get an error if we try to access this variable:
.. raw:: html .. raw:: html
:url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_022/config/01/output_rw.html :url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_012/config/01/output_rw.html
:class: error-box :class: error-box
.. ..
@ -175,7 +175,7 @@ And we need to set the values in separate files too, called `user data fil
Here is a user data file sample: Here is a user data file sample:
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_022/config/03/config.yaml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_012/config/03/config.yaml
:language: yaml :language: yaml
:caption: A user file named :file:`config/config.yaml` with a value set for the `address` variable :caption: A user file named :file:`config/config.yaml` with a value set for the `address` variable
:name: RougailAddresseVariableUserValue :name: RougailAddresseVariableUserValue
@ -204,7 +204,7 @@ Let's validate the consitency of the configuration:
Everything is OK: Everything is OK:
.. raw:: html .. raw:: html
:url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_022/config/03/output_rw.html :url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_012/config/03/output_rw.html
:class: output :class: output
.. ..
@ -251,7 +251,7 @@ This is where the ability to parameterize our variable comes in.
params: params:
allow_ip: true allow_ip: true
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_025/firefox/10-manual.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_024/firefox/10-manual.yml
:language: yaml :language: yaml
:caption: The `address` has a parameter set in the :file:`firefox/10-manual.yml` structure file :caption: The `address` has a parameter set in the :file:`firefox/10-manual.yml` structure file
:name: RougailAddressParameter :name: RougailAddressParameter
@ -291,7 +291,7 @@ Let's create a `port` variable in the `http_proxy` family:
Here is the new :file:`firefox/10-manual.yml` structure file: Here is the new :file:`firefox/10-manual.yml` structure file:
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_022/firefox/10-manual.yml .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_012/firefox/10-manual.yml
:language: yaml :language: yaml
:caption: A rougail structure description file with a hierarchy. :caption: A rougail structure description file with a hierarchy.
:name: RogailPortVariable :name: RogailPortVariable