62 lines
2.7 KiB
ReStructuredText
62 lines
2.7 KiB
ReStructuredText
Auto save value
|
|
===============
|
|
|
|
.. objectives:: Objectives
|
|
|
|
A default value is a value that can be recalculated at different times. It can be useful to consider the default value as a modified value.
|
|
|
|
.. prerequisites:: Prerequisites
|
|
|
|
- We assume that Rougail's library is :ref:`installed <installation>` on your computer.
|
|
|
|
- It is possible to retrieve the current state of the various Rougail files manipulated in this tutorial step
|
|
by checking out the corresponding tag of the `rougail-tutorials` git repository.
|
|
Each tag corresponds to a stage of progress in the tutorial.
|
|
Of course, you can also decide to copy/paste or download the tutorial files contents while following the tutorial steps.
|
|
|
|
If you want to follow this tutorial with the help of the corresponding :tutorial:`rougail-tutorials git repository <src/branch/1.1>`,
|
|
this workshop page corresponds to the tag :tutorial:`v1.1_210 <src/tag/v1.1_210/README.md>`
|
|
|
|
::
|
|
|
|
git clone https://forge.cloud.silique.fr/stove/rougail-tutorials.git
|
|
git switch --detach v1.1_210
|
|
|
|
The :ref:`configuration` is loaded into :term:`Tiramisu`. In this case, the default values are cached upon the first access to the variable. However, sometimes this value will be recalculated.
|
|
If the default value is random, this can cause problems. Indeed, the value can change over time.
|
|
|
|
The `auto_save` property allows you to say that the calculated value will be considered as modified (therefore not recalculated) on the first access to this variable.
|
|
|
|
Remember, we just performed a random calculation for the variable `color`:
|
|
|
|
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_201/foxyproxy/00-foxyproxy.yml
|
|
:language: yaml
|
|
:caption: Calculate the default variable `color`.
|
|
|
|
We just need to set the `auto_save` property to true on this variable:
|
|
|
|
.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_210/foxyproxy/00-foxyproxy.yml
|
|
:language: yaml
|
|
:caption: Auto_save for the variable `color`.
|
|
|
|
Test this variable with this Rougail CLI:
|
|
|
|
.. raw:: html
|
|
:class: terminal
|
|
:url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/commit/v1.1_210/config/02/cmd_ro.txt
|
|
|
|
We have this output:
|
|
|
|
.. raw:: html
|
|
:class: output
|
|
:url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_210/config/02/output_ro.html
|
|
|
|
As you can see, the value is the color of the modified variables.
|
|
|
|
.. note::
|
|
|
|
We do not save this value. It is therefore stored in memory. When the Rougail CLI closes, this value is forgotten. It will be recalculated if you run the command again.
|
|
|
|
.. keypoints:: Key points
|
|
|
|
We can auto save a variable.
|