From f7fdc16e0459f34621ad5234c646b952b67bb968 Mon Sep 17 00:00:00 2001 From: Emmanuel Garette Date: Sat, 22 Nov 2025 14:13:33 +0100 Subject: [PATCH] [tutorial v1.1_031)] A variable with type's parameters (config and doc) --- README.md | 130 +++++----------------------------- config/01/cmd_ro.txt | 1 - config/01/config.yml | 4 -- config/01/output_ro.html | 10 --- config/02/cmd_invalid.txt | 1 - config/02/cmd_ro.txt | 1 - config/02/config.yml | 4 -- config/02/output_invalid.html | 7 -- config/02/output_ro.html | 8 --- config/03/cmd_invalid.txt | 1 - config/03/cmd_ro.txt | 1 - config/03/config.yml | 4 -- config/03/output_invalid.html | 7 -- config/03/output_ro.html | 8 --- tree.html | 8 +-- 15 files changed, 20 insertions(+), 175 deletions(-) delete mode 100644 config/01/cmd_ro.txt delete mode 100644 config/01/config.yml delete mode 100644 config/01/output_ro.html delete mode 100644 config/02/cmd_invalid.txt delete mode 100644 config/02/cmd_ro.txt delete mode 100644 config/02/config.yml delete mode 100644 config/02/output_invalid.html delete mode 100644 config/02/output_ro.html delete mode 100644 config/03/cmd_invalid.txt delete mode 100644 config/03/cmd_ro.txt delete mode 100644 config/03/config.yml delete mode 100644 config/03/output_invalid.html delete mode 100644 config/03/output_ro.html diff --git a/README.md b/README.md index 131e4141..f5cc26c8 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,11 @@ - [Summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/branch/1.1/README.md) -- [[tutorial v1.1_022] Putting a variable inside of a family or a sub family](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_022/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_022~1..v1.1_022)) +- [[tutorial v1.1_030] A variable with type "domainname"](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_030/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_030~1..v1.1_030)) -# [tutorial v1.1_030)] A variable with type "domainname" +# [tutorial v1.1_031)] A variable with type's parameters -[View the diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_030~1..v1.1_030) +[View the diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_031~1..v1.1_031) -[Read the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/disabled.html#a-variable-with-type-"domainname") +[Read the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/disabled.html#a-variable-with-type's-parameters) ## Screenshot @@ -31,7 +31,7 @@ pip install rougail-cli rougail-output-exporter rougail-output-doc rougail-user- Then switch to the tutorial page: ```shell -git switch --detach v1.1_030 +git switch --detach v1.1_031 ``` ## Structure @@ -39,10 +39,10 @@ git switch --detach v1.1_030

-.
- └── firefox
-     ├── 00-proxy.yml
-     └── 10-manual.yml
+.
+ └── firefox
+     ├── 00-proxy.yml
+     └── 10-manual.yml


Contents of the firefox/10-manual.yml file @@ -59,6 +59,8 @@ manual: # Manual proxy configuration address: description: HTTP address type: domainname + params: + allow_ip: true ... ``` @@ -85,7 +87,7 @@ rougail -m firefox/ -o doc | Variable                                                                                            | Description                                                                                         | |------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| **manual.http_proxy.address**
[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | HTTP address. | +| **manual.http_proxy.address**
[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | HTTP address.
**Validator**: the domain name can be an IP | ### Let's generate the changelog @@ -94,111 +96,11 @@ rougail -m firefox/ -o doc --doc.contents changelog ``` #### Modified variable -| Variable                                                                                                                    | Description                                                                                                                 | -|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| **manual.http_proxy.address**
~~`string`~~ [`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | HTTP address. | +| Variable                                                                                            | Description                                                                                         | +|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| **manual.http_proxy.address**
[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | HTTP address.
**Validator**: the domain name can be an IP | -## User datas - -### Example 1 - -#### config/01/config.yml -```yml ---- -manual: - http_proxy: - address: example.net -``` -#### Output - -```shell -rougail -m firefox/ -u yaml -yf config/01/config.yml -``` -
╭──────── Caption ────────╮
-│ Variable Default value  │
-│          Modified value │
-╰─────────────────────────╯
-Variables:
-┣━━ 📓 Configure Proxy Access to the Internet: No proxy
-┗━━ 📂 Manual proxy configuration
-    ┗━━ 📂 HTTP Proxy
-        ┗━━ 📓 HTTP address: example.net ◀ loaded from the YAML file "config/01/config.yml"
-
-### Example 2 - -#### config/02/config.yml - - -```yml ---- -manual: - http_proxy: - address: 192.168.0.1 -``` -#### Output - -```shell -rougail -m firefox/ -u yaml -yf config/02/config.yml -``` -
🔔 WARNINGS
-┗━━ the value "192.168.0.1" is an invalid domain name for "manual.http_proxy.address" (HTTP address), must not be an IP, it will be ignored when loading from the YAML file "config/02/config.yml"
-🛑 ERRORS
-┗━━ The following variables are mandatory but have no value:
-    ┗━━ Manual proxy configuration
-        ┗━━ HTTP Proxy
-            ┗━━ HTTP address
-
-#### Output when invalid user datas is an error - -```shell -rougail -m firefox/ -u yaml -yf config/02/config.yml --cli.invalid_user_datas_error -``` -
🛑 ERRORS
-┣━━ the value "192.168.0.1" is an invalid domain name for "manual.http_proxy.address" (HTTP address), must not be an IP, it will be ignored when loading from the YAML file "config/02/config.yml"
-┗━━ The following variables are mandatory but have no value:
-    ┗━━ Manual proxy configuration
-        ┗━━ HTTP Proxy
-            ┗━━ HTTP address
-
-### Example 3 - -#### config/03/config.yml - - -```yml ---- -manual: - http_proxy: - address: not a valid domain name -``` -#### Output - -```shell -rougail -m firefox/ -u yaml -yf config/03/config.yml -``` -
🔔 WARNINGS
-┗━━ the value "not a valid domain name" is an invalid domain name for "manual.http_proxy.address" (HTTP address), must have dot, it will be ignored when loading from the YAML file "config/03/config.yml"
-🛑 ERRORS
-┗━━ The following variables are mandatory but have no value:
-    ┗━━ Manual proxy configuration
-        ┗━━ HTTP Proxy
-            ┗━━ HTTP address
-
-#### Output when invalid user datas is an error - -```shell -rougail -m firefox/ -u yaml -yf config/03/config.yml --cli.invalid_user_datas_error -``` -
🛑 ERRORS
-┣━━ the value "not a valid domain name" is an invalid domain name for "manual.http_proxy.address" (HTTP address), must have dot, it will be ignored when loading from the YAML file "config/03/config.yml"
-┗━━ The following variables are mandatory but have no value:
-    ┗━━ Manual proxy configuration
-        ┗━━ HTTP Proxy
-            ┗━━ HTTP address
-
- - -- [[tutorial v1.1_031] A variable with type's parameters](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_031/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_031~1..v1.1_031)) +- [[tutorial v1.1_032] A variable with type "port"](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_032/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_032~1..v1.1_032)) diff --git a/config/01/cmd_ro.txt b/config/01/cmd_ro.txt deleted file mode 100644 index d46f9445..00000000 --- a/config/01/cmd_ro.txt +++ /dev/null @@ -1 +0,0 @@ -rougail -m firefox/ -u yaml -yf config/01/config.yml \ No newline at end of file diff --git a/config/01/config.yml b/config/01/config.yml deleted file mode 100644 index 22422a2f..00000000 --- a/config/01/config.yml +++ /dev/null @@ -1,4 +0,0 @@ ---- -manual: - http_proxy: - address: example.net diff --git a/config/01/output_ro.html b/config/01/output_ro.html deleted file mode 100644 index d298e7b1..00000000 --- a/config/01/output_ro.html +++ /dev/null @@ -1,10 +0,0 @@ -
╭──────── Caption ────────╮
-│ Variable Default value  │
-│          Modified value │
-╰─────────────────────────╯
-Variables:
-┣━━ 📓 Configure Proxy Access to the Internet: No proxy
-┗━━ 📂 Manual proxy configuration
-    ┗━━ 📂 HTTP Proxy
-        ┗━━ 📓 HTTP address: example.net ◀ loaded from the YAML file "config/01/config.yml"
-
diff --git a/config/02/cmd_invalid.txt b/config/02/cmd_invalid.txt deleted file mode 100644 index 0bbf6053..00000000 --- a/config/02/cmd_invalid.txt +++ /dev/null @@ -1 +0,0 @@ -rougail -m firefox/ -u yaml -yf config/02/config.yml --cli.invalid_user_datas_error \ No newline at end of file diff --git a/config/02/cmd_ro.txt b/config/02/cmd_ro.txt deleted file mode 100644 index 772ebbef..00000000 --- a/config/02/cmd_ro.txt +++ /dev/null @@ -1 +0,0 @@ -rougail -m firefox/ -u yaml -yf config/02/config.yml \ No newline at end of file diff --git a/config/02/config.yml b/config/02/config.yml deleted file mode 100644 index cbc99036..00000000 --- a/config/02/config.yml +++ /dev/null @@ -1,4 +0,0 @@ ---- -manual: - http_proxy: - address: 192.168.0.1 diff --git a/config/02/output_invalid.html b/config/02/output_invalid.html deleted file mode 100644 index 890e867c..00000000 --- a/config/02/output_invalid.html +++ /dev/null @@ -1,7 +0,0 @@ -
🛑 ERRORS
-┣━━ the value "192.168.0.1" is an invalid domain name for "manual.http_proxy.address" (HTTP address), must not be an IP, it will be ignored when loading from the YAML file "config/02/config.yml"
-┗━━ The following variables are mandatory but have no value:
-    ┗━━ Manual proxy configuration
-        ┗━━ HTTP Proxy
-            ┗━━ HTTP address
-
diff --git a/config/02/output_ro.html b/config/02/output_ro.html deleted file mode 100644 index 7619b3bb..00000000 --- a/config/02/output_ro.html +++ /dev/null @@ -1,8 +0,0 @@ -
🔔 WARNINGS
-┗━━ the value "192.168.0.1" is an invalid domain name for "manual.http_proxy.address" (HTTP address), must not be an IP, it will be ignored when loading from the YAML file "config/02/config.yml"
-🛑 ERRORS
-┗━━ The following variables are mandatory but have no value:
-    ┗━━ Manual proxy configuration
-        ┗━━ HTTP Proxy
-            ┗━━ HTTP address
-
diff --git a/config/03/cmd_invalid.txt b/config/03/cmd_invalid.txt deleted file mode 100644 index ffde9149..00000000 --- a/config/03/cmd_invalid.txt +++ /dev/null @@ -1 +0,0 @@ -rougail -m firefox/ -u yaml -yf config/03/config.yml --cli.invalid_user_datas_error \ No newline at end of file diff --git a/config/03/cmd_ro.txt b/config/03/cmd_ro.txt deleted file mode 100644 index fc8085eb..00000000 --- a/config/03/cmd_ro.txt +++ /dev/null @@ -1 +0,0 @@ -rougail -m firefox/ -u yaml -yf config/03/config.yml \ No newline at end of file diff --git a/config/03/config.yml b/config/03/config.yml deleted file mode 100644 index bdc052ca..00000000 --- a/config/03/config.yml +++ /dev/null @@ -1,4 +0,0 @@ ---- -manual: - http_proxy: - address: not a valid domain name diff --git a/config/03/output_invalid.html b/config/03/output_invalid.html deleted file mode 100644 index 6dc4278a..00000000 --- a/config/03/output_invalid.html +++ /dev/null @@ -1,7 +0,0 @@ -
🛑 ERRORS
-┣━━ the value "not a valid domain name" is an invalid domain name for "manual.http_proxy.address" (HTTP address), must have dot, it will be ignored when loading from the YAML file "config/03/config.yml"
-┗━━ The following variables are mandatory but have no value:
-    ┗━━ Manual proxy configuration
-        ┗━━ HTTP Proxy
-            ┗━━ HTTP address
-
diff --git a/config/03/output_ro.html b/config/03/output_ro.html deleted file mode 100644 index 00845602..00000000 --- a/config/03/output_ro.html +++ /dev/null @@ -1,8 +0,0 @@ -
🔔 WARNINGS
-┗━━ the value "not a valid domain name" is an invalid domain name for "manual.http_proxy.address" (HTTP address), must have dot, it will be ignored when loading from the YAML file "config/03/config.yml"
-🛑 ERRORS
-┗━━ The following variables are mandatory but have no value:
-    ┗━━ Manual proxy configuration
-        ┗━━ HTTP Proxy
-            ┗━━ HTTP address
-
diff --git a/tree.html b/tree.html index ad160607..f3ac9c54 100644 --- a/tree.html +++ b/tree.html @@ -25,10 +25,10 @@

Directory Tree

- .
- └── firefox
-     ├── 00-proxy.yml
-     └── 10-manual.yml
+ .
+ └── firefox
+     ├── 00-proxy.yml
+     └── 10-manual.yml


2 directories, 2 files