diff --git a/README.md b/README.md index 86353a73..cc4c0bbc 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_021] Or a sub family](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_021/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_021~1..v1.1_021)) +- [[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_022] Putting a variable inside of a family or a sub family +# [tutorial v1.1_030] A variable with type "domainname" -[View the diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_022~1..v1.1_022) +[View the diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_030~1..v1.1_030) -[Read the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/proxymode.html#putting-a-variable-inside-of-a-family-or-a-sub-family) +[Read the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/disabled.html#a-variable-with-type-"domainname") ## 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_022 +git switch --detach v1.1_030 ``` ## Structure @@ -39,10 +39,10 @@ git switch --detach v1.1_022

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


Contents of the firefox/10-manual.yml file @@ -56,7 +56,9 @@ manual: # Manual proxy configuration http_proxy: # HTTP Proxy - address: # HTTP address + address: + description: HTTP address + type: domainname ... ``` @@ -81,20 +83,20 @@ rougail -m firefox/ -o doc > > **Path**: manual.http_proxy -| Variable | Description | -|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------| -| **manual.http_proxy.address**
[`string`](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**: type domainname | ### Let's generate the changelog ```shell rougail -m firefox/ -o doc --doc.contents changelog ``` -#### New variable +#### Modified variable -| Variable | Description | -|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------| -| **manual.http_proxy.address**
[`string`](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**: type domainname | ## User datas @@ -104,25 +106,6 @@ rougail -m firefox/ -o doc --doc.contents changelog #### config/01/config.yml -```yml ---- -``` -#### Output - -```shell -rougail -m firefox/ -u yaml -yf config/01/config.yml -``` -
🛑 ERRORS
-┗━━ The following variables are mandatory but have no value:
-    ┗━━ Manual proxy configuration
-        ┗━━ HTTP Proxy
-            ┗━━ HTTP address
-
-### Example 2 - -#### config/02/config.yml - - ```yml --- manual: @@ -132,7 +115,7 @@ manual: #### Output ```shell -rougail -m firefox/ -u yaml -yf config/02/config.yml +rougail -m firefox/ -u yaml -yf config/01/config.yml ```
╭───────────────────── Caption ─────────────────────╮
 │ Variable                           Default value  │
@@ -143,7 +126,43 @@ Variables:
 ┗━━ 📂 Manual proxy configuration
     ┗━━ 📂 HTTP Proxy
         ┗━━ 📓 HTTP address: example.net ◀ loaded from the YAML file 
-            "config/02/config.yml"
+            "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"
 
### Example 3 @@ -154,8 +173,7 @@ Variables: --- manual: http_proxy: - address: example.net - port: 3128 + address: not a valid domain name ``` #### Output @@ -163,19 +181,25 @@ manual: rougail -m firefox/ -u yaml -yf config/03/config.yml ```
🔔 WARNINGS
-┗━━ variable or family "manual.http_proxy.port" does not exist, it will be 
+┗━━ 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"
-╭───────────────────── Caption ─────────────────────╮
-│ Variable                           Default value  │
-│ Undocumented but modified variable 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/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"
 
-- [[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_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)) diff --git a/config/01/config.yml b/config/01/config.yml index ed97d539..22422a2f 100644 --- a/config/01/config.yml +++ b/config/01/config.yml @@ -1 +1,4 @@ --- +manual: + http_proxy: + address: example.net diff --git a/config/01/output_ro.html b/config/01/output_ro.html index ec666c15..c2e650fc 100644 --- a/config/01/output_ro.html +++ b/config/01/output_ro.html @@ -1,6 +1,11 @@ -
🛑 ERRORS
-┗━━ The following variables are mandatory but have no value:
-    ┗━━ Manual proxy configuration
-        ┗━━ HTTP Proxy
-            ┗━━ HTTP address
+
╭───────────────────── Caption ─────────────────────╮
+│ Variable                           Default value  │
+│ Undocumented but modified variable 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 new file mode 100644 index 00000000..0bbf6053 --- /dev/null +++ b/config/02/cmd_invalid.txt @@ -0,0 +1 @@ +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/config.yml b/config/02/config.yml index 22422a2f..cbc99036 100644 --- a/config/02/config.yml +++ b/config/02/config.yml @@ -1,4 +1,4 @@ --- manual: http_proxy: - address: example.net + address: 192.168.0.1 diff --git a/config/02/output_invalid.html b/config/02/output_invalid.html new file mode 100644 index 00000000..abfe5f30 --- /dev/null +++ b/config/02/output_invalid.html @@ -0,0 +1,5 @@ +
🛑 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"
+
diff --git a/config/02/output_ro.html b/config/02/output_ro.html index 2449b1c8..e1ccaa14 100644 --- a/config/02/output_ro.html +++ b/config/02/output_ro.html @@ -1,11 +1,10 @@ -
╭───────────────────── Caption ─────────────────────╮
-│ Variable                           Default value  │
-│ Undocumented but modified variable 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/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
 
diff --git a/config/03/cmd_invalid.txt b/config/03/cmd_invalid.txt new file mode 100644 index 00000000..ffde9149 --- /dev/null +++ b/config/03/cmd_invalid.txt @@ -0,0 +1 @@ +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/config.yml b/config/03/config.yml index da3353ac..bdc052ca 100644 --- a/config/03/config.yml +++ b/config/03/config.yml @@ -1,5 +1,4 @@ --- manual: http_proxy: - address: example.net - port: 3128 + address: not a valid domain name diff --git a/config/03/output_invalid.html b/config/03/output_invalid.html new file mode 100644 index 00000000..4c6a9ad2 --- /dev/null +++ b/config/03/output_invalid.html @@ -0,0 +1,5 @@ +
🛑 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"
+
diff --git a/config/03/output_ro.html b/config/03/output_ro.html index 10421283..7ae93065 100644 --- a/config/03/output_ro.html +++ b/config/03/output_ro.html @@ -1,14 +1,10 @@
🔔 WARNINGS
-┗━━ variable or family "manual.http_proxy.port" does not exist, it will be 
+┗━━ 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"
-╭───────────────────── Caption ─────────────────────╮
-│ Variable                           Default value  │
-│ Undocumented but modified variable 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/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 a040cdf7..ad160607 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