From 65d4440694a92a8871cfa0057b442378c49a60bf Mon Sep 17 00:00:00 2001 From: gwen Date: Tue, 2 Dec 2025 11:52:21 +0100 Subject: [PATCH] push --- docs/tutorial/domainname.rst | 67 +++++++++++++++++++++++--- docs/tutorial/images/firefox_port.png | Bin 0 -> 8784 bytes 2 files changed, 59 insertions(+), 8 deletions(-) create mode 100644 docs/tutorial/images/firefox_port.png diff --git a/docs/tutorial/domainname.rst b/docs/tutorial/domainname.rst index 8d0668e67..01a48baeb 100644 --- a/docs/tutorial/domainname.rst +++ b/docs/tutorial/domainname.rst @@ -1,4 +1,4 @@ -A variable with type `domainname` +The `domainname` and `port` types ================================== .. objectives:: Objectives @@ -25,7 +25,7 @@ A variable with type `domainname` .. type-along:: let's recap how far we've come -We have an `http_proxy` family with an `address` variable +We have an `http_proxy` family with an `address` variable. .. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_030/firefox/10-manual.yml :language: yaml @@ -40,6 +40,9 @@ We have an `http_proxy` family with an `address` variable :tutorial:`Download this file from the rougail-tutorials git repository ` +A variable with type `domainname` +----------------------------------- + And we have assigned a type to this variable: .. code-block:: yaml @@ -178,7 +181,7 @@ we then have this output: OK I agree with the `domainname` type, but what if I want to specify an IP address as a user value for this `address` variable? - Because it is therefore simply impossible to do so. + Because it is therefore simply impossible to do so now. Is there a way for my `address` variable to accept an IP address? @@ -220,15 +223,63 @@ The params allow the domain name `address` variable to be set with IPs. parameter - A parameter is a property of a variable that can refine its behavior + A parameter is a property of a variable that can refine its behavior. + It is declared by adding the `params` attribute in the variable's + definition. + +Now we will test with an IP address as the value for our `address` variable. + +.. type-along:: For those who follow the tutorial with the help of the git repository + + Now you need to checkout the `v1.1_031` version:: + + git checkout v1.1_031 + + +.. extinclude:: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_031/config/02/config.yml + :language: yaml + :caption: An IP address as a value + +.. + --- + manual: + http_proxy: + address: 192.168.0.1 + +:tutorial:`Download this file from the rougail-tutorials git repository ` + +if we launch the rougail CLI on it: + +.. raw:: html + :url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_031/config/02/cmd_ro.txt + :class: terminal + +.. + rougail -m firefox/ -u yaml -yf config/02/config.yml + +We have this output: + +.. raw:: html + :url: https://forge.cloud.silique.fr/stove/rougail-tutorials/raw/tag/v1.1_030/config/01/output_ro.html + :class: output + +We can see that the IP address value has been accepted. + +A variable with type `port` +------------------------------ + +We will add, according to our use case, a variable of type `port`: + +.. image:: images/firefox_port.png + + + .. keypoints:: let's review the key points **Keywords** - - we can add :term:`parameter`\ s to variables to refine their behavior + - we can set a `domainname` type to a variable + - we can add :term:`parameter`\ s to variables to refine their typing behavior - **Progress** - - FIXME diff --git a/docs/tutorial/images/firefox_port.png b/docs/tutorial/images/firefox_port.png new file mode 100644 index 0000000000000000000000000000000000000000..70583c3a47e4f01201624fcc8f257f86c3ebac74 GIT binary patch literal 8784 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