[tutorial v1.1_043] A conditional hidden family (config and doc)
This commit is contained in:
parent
74b8df6ff0
commit
978a50e651
8 changed files with 155 additions and 17 deletions
116
README.md
116
README.md
|
|
@ -1,11 +1,11 @@
|
||||||
- [Summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/branch/1.1/README.md)
|
- [Summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/branch/1.1/README.md)
|
||||||
- [[tutorial v1.1_041] A conditional disabled family](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_041/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_041~1..v1.1_041))
|
- [[tutorial v1.1_042] A hidden family](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_042~1..v1.1_042))
|
||||||
|
|
||||||
# [tutorial v1.1_042] A hidden family
|
# [tutorial v1.1_043] A conditional hidden family
|
||||||
|
|
||||||
[View the diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_042~1..v1.1_042)
|
[View the diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_043~1..v1.1_043)
|
||||||
|
|
||||||
[Read the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/disabled.html#a-hidden-family)
|
[Read the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/disabled.html#a-conditional-hidden-family)
|
||||||
|
|
||||||
|
|
||||||
## Screenshot
|
## Screenshot
|
||||||
|
|
@ -31,7 +31,7 @@ pip install rougail-cli rougail-output-exporter rougail-output-doc rougail-user-
|
||||||
Then switch to the tutorial page:
|
Then switch to the tutorial page:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
git switch --detach v1.1_042
|
git switch --detach v1.1_043
|
||||||
```
|
```
|
||||||
|
|
||||||
## Structure
|
## Structure
|
||||||
|
|
@ -39,11 +39,11 @@ git switch --detach v1.1_042
|
||||||
|
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/./">.</a><br/>
|
<a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/./">.</a><br/>
|
||||||
└── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/./firefox/">firefox</a><br/>
|
└── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/./firefox/">firefox</a><br/>
|
||||||
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/./firefox/00-proxy.yml">00-proxy.yml</a><br/>
|
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/./firefox/00-proxy.yml">00-proxy.yml</a><br/>
|
||||||
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/./firefox/10-manual.yml">10-manual.yml</a><br/>
|
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/./firefox/10-manual.yml">10-manual.yml</a><br/>
|
||||||
└── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/./firefox/20-manual.yml">20-manual.yml</a><br/>
|
└── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/./firefox/20-manual.yml">20-manual.yml</a><br/>
|
||||||
<br/><br/></p>
|
<br/><br/></p>
|
||||||
|
|
||||||
Contents of the firefox/20-manual.yml file
|
Contents of the firefox/20-manual.yml file
|
||||||
|
|
@ -59,7 +59,8 @@ manual:
|
||||||
|
|
||||||
https_proxy:
|
https_proxy:
|
||||||
description: HTTPS Proxy
|
description: HTTPS Proxy
|
||||||
hidden: true
|
hidden:
|
||||||
|
variable: _.use_for_https
|
||||||
|
|
||||||
address:
|
address:
|
||||||
description: HTTPS address
|
description: HTTPS address
|
||||||
|
|
@ -106,6 +107,97 @@ rougail -m firefox/ -o doc
|
||||||
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------|
|
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------|
|
||||||
| **<a id="manual.use_for_https" name="manual.use_for_https">manual.use_for_https</a>**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | Also use this proxy for HTTPS.<br/>**Default**: true |
|
| **<a id="manual.use_for_https" name="manual.use_for_https">manual.use_for_https</a>**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | Also use this proxy for HTTPS.<br/>**Default**: true |
|
||||||
|
|
||||||
|
##### HTTPS Proxy
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
>
|
||||||
|
> **Path**: manual.https_proxy\
|
||||||
|
> *`hidden`*\
|
||||||
|
> **Hidden**: when the variable "[Also use this proxy for HTTPS](#manual.use_for_https)" has the value "true"
|
||||||
|
|
||||||
|
| Variable | Description |
|
||||||
|
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
| **<a id="manual.https_proxy.address" name="manual.https_proxy.address">manual.https_proxy.address</a>**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | HTTPS address.<br/>**Validators**: <br/>• type domainname<br/>• the domain name can be an IP |
|
||||||
|
| **<a id="manual.https_proxy.port" name="manual.https_proxy.port">manual.https_proxy.port</a>**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | HTTPS Port.<br/>**Validators**: <br/>• well-known ports (1 to 1023) are allowed<br/>• registred ports (1024 to 49151) are allowed<br/>• private ports (greater than 49152) are allowed<br/>**Default**: 8080 |
|
||||||
|
|
||||||
|
### Let's generate the changelog
|
||||||
|
|
||||||
|
```shell
|
||||||
|
rougail -m firefox/ -o doc --doc.contents changelog
|
||||||
|
```
|
||||||
|
#### New variables
|
||||||
|
|
||||||
|
| Variable | Description |
|
||||||
|
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
| **<a id="manual.https_proxy.address" name="manual.https_proxy.address">manual.https_proxy.address</a>**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | HTTPS address.<br/>**Validators**: <br/>• type domainname<br/>• the domain name can be an IP |
|
||||||
|
| **<a id="manual.https_proxy.port" name="manual.https_proxy.port">manual.https_proxy.port</a>**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | HTTPS Port.<br/>**Validators**: <br/>• well-known ports (1 to 1023) are allowed<br/>• registred ports (1024 to 49151) are allowed<br/>• private ports (greater than 49152) are allowed<br/>**Default**: 8080 |
|
||||||
|
|
||||||
|
|
||||||
- [[tutorial v1.1_043] A conditional hidden family](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_043~1..v1.1_043))
|
## User datas
|
||||||
|
|
||||||
|
### Example 1
|
||||||
|
|
||||||
|
#### config/01/config.yml
|
||||||
|
|
||||||
|
|
||||||
|
```yml
|
||||||
|
---
|
||||||
|
proxy_mode: Manual proxy configuration
|
||||||
|
manual:
|
||||||
|
http_proxy:
|
||||||
|
address: http.proxy.net
|
||||||
|
port: 3128
|
||||||
|
use_for_https: false
|
||||||
|
https_proxy:
|
||||||
|
address: https.proxy.net
|
||||||
|
```
|
||||||
|
#### Output
|
||||||
|
|
||||||
|
```shell
|
||||||
|
rougail -m firefox/ -u yaml -yf config/01/config.yml
|
||||||
|
```
|
||||||
|
> [!NOTE]
|
||||||
|
>
|
||||||
|
> **Caption:**
|
||||||
|
> - Variable
|
||||||
|
> - <span style="color: #B8860B">Default value</span>
|
||||||
|
> - <span style="color: #006400">Modified value</span>
|
||||||
|
> - (:hourglass_flowing_sand: Original default value)
|
||||||
|
|
||||||
|
Variables:
|
||||||
|
- :notebook: proxy_mode (Configure Proxy Access to the Internet): <span style="color: #006400">Manual proxy configuration</span> ← loaded from the YAML file "config/01/config.yml" (:hourglass_flowing_sand: No proxy)
|
||||||
|
- :open_file_folder: manual (Manual proxy configuration)
|
||||||
|
- :open_file_folder: http_proxy (HTTP Proxy)
|
||||||
|
- :notebook: address (HTTP address): <span style="color: #006400">http.proxy.net</span> ← loaded from the YAML file "config/01/config.yml"
|
||||||
|
- :notebook: port (HTTP Port): <span style="color: #006400">3128</span> ← loaded from the YAML file "config/01/config.yml" (:hourglass_flowing_sand: 8080)
|
||||||
|
- :notebook: use_for_https (Also use this proxy for HTTPS): <span style="color: #006400">false</span> ← loaded from the YAML file "config/01/config.yml" (:hourglass_flowing_sand: true)
|
||||||
|
- :open_file_folder: https_proxy (HTTPS Proxy)
|
||||||
|
- :notebook: address (HTTPS address): <span style="color: #006400">https.proxy.net</span> ← loaded from the YAML file "config/01/config.yml"
|
||||||
|
- :notebook: port (HTTPS Port): <span style="color: #B8860B">8080</span>
|
||||||
|
### Example 2
|
||||||
|
|
||||||
|
#### config/02/config.yml
|
||||||
|
|
||||||
|
|
||||||
|
```yml
|
||||||
|
---
|
||||||
|
proxy_mode: Manual proxy configuration
|
||||||
|
manual:
|
||||||
|
http_proxy:
|
||||||
|
address: http.proxy.net
|
||||||
|
port: 3128
|
||||||
|
use_for_https: true
|
||||||
|
```
|
||||||
|
#### Output
|
||||||
|
|
||||||
|
```shell
|
||||||
|
rougail -m firefox/ -u yaml -yf config/02/config.yml
|
||||||
|
```
|
||||||
|
> [!CAUTION]
|
||||||
|
>
|
||||||
|
> - manual (Manual proxy configuration)
|
||||||
|
> - https_proxy (HTTPS Proxy)
|
||||||
|
> - address (HTTPS address): :stop_sign: <span style="color: #C23636">mandatory variable but is inaccessible and has no value</span>
|
||||||
|
|
||||||
|
|
||||||
|
- [[tutorial v1.1_050] A calculated default value](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_050/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_050~1..v1.1_050))
|
||||||
|
|
|
||||||
1
config/01/cmd_ro.txt
Normal file
1
config/01/cmd_ro.txt
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
rougail -m firefox/ -u yaml -yf config/01/config.yml
|
||||||
9
config/01/config.yml
Normal file
9
config/01/config.yml
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
---
|
||||||
|
proxy_mode: Manual proxy configuration
|
||||||
|
manual:
|
||||||
|
http_proxy:
|
||||||
|
address: http.proxy.net
|
||||||
|
port: 3128
|
||||||
|
use_for_https: false
|
||||||
|
https_proxy:
|
||||||
|
address: https.proxy.net
|
||||||
22
config/01/output_ro.html
Normal file
22
config/01/output_ro.html
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
<pre>╭────────────── Caption ───────────────╮
|
||||||
|
│ Variable <span style="color: #ffd700">Default value</span> │
|
||||||
|
│ <span style="color: #00aa00">Modified value</span> │
|
||||||
|
│ (⏳ Original default value) │
|
||||||
|
╰──────────────────────────────────────╯
|
||||||
|
Variables:
|
||||||
|
<span style="color: #5c5cff">┣━━ </span>📓 proxy_mode (Configure Proxy Access to the Internet): <span style="color: #00aa00">Manual proxy </span>
|
||||||
|
<span style="color: #5c5cff">┃ </span><span style="color: #00aa00">configuration</span> ◀ loaded from the YAML file "config/01/config.yml" (⏳ No
|
||||||
|
<span style="color: #5c5cff">┃ </span>proxy)
|
||||||
|
<span style="color: #5c5cff">┗━━ </span>📂 manual (Manual proxy configuration)
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📂 http_proxy (HTTP Proxy)
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff">┃ </span><span style="color: #5c5cff">┣━━ </span>📓 address (HTTP address): <span style="color: #00aa00">http.proxy.net</span> ◀ loaded from the YAML
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff">┃ </span><span style="color: #5c5cff">┃ </span>file "config/01/config.yml"
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff">┃ </span><span style="color: #5c5cff">┗━━ </span>📓 port (HTTP Port): <span style="color: #00aa00">3128</span> ◀ loaded from the YAML file
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff">┃ </span><span style="color: #5c5cff"> </span>"config/01/config.yml" (⏳ 8080)
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 use_for_https (Also use this proxy for HTTPS): <span style="color: #00aa00">false</span> ◀ loaded from
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff">┃ </span>the YAML file "config/01/config.yml" (⏳ true)
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff">┗━━ </span>📂 https_proxy (HTTPS Proxy)
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 address (HTTPS address): <span style="color: #00aa00">https.proxy.net</span> ◀ loaded from the YAML
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┃ </span>file "config/01/config.yml"
|
||||||
|
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┗━━ </span>📓 port (HTTPS Port): <span style="color: #ffd700">8080</span>
|
||||||
|
</pre>
|
||||||
1
config/02/cmd_ro.txt
Normal file
1
config/02/cmd_ro.txt
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
rougail -m firefox/ -u yaml -yf config/02/config.yml
|
||||||
7
config/02/config.yml
Normal file
7
config/02/config.yml
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
proxy_mode: Manual proxy configuration
|
||||||
|
manual:
|
||||||
|
http_proxy:
|
||||||
|
address: http.proxy.net
|
||||||
|
port: 3128
|
||||||
|
use_for_https: true
|
||||||
6
config/02/output_ro.html
Normal file
6
config/02/output_ro.html
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
<pre><span style="font-weight: bold; color: #ff0000">🛑 Caution</span>
|
||||||
|
<span style="color: #ff0000">┗━━ </span>manual (Manual proxy configuration)
|
||||||
|
<span style="color: #ff0000"> </span><span style="color: #ff0000">┗━━ </span>https_proxy (HTTPS Proxy)
|
||||||
|
<span style="color: #ff0000"> </span><span style="color: #ff0000"> </span><span style="color: #ff0000">┗━━ </span>address (HTTPS address): <span style="color: #ff0000">🛑 mandatory variable but is inaccessible </span>
|
||||||
|
<span style="color: #ff0000"> </span><span style="color: #ff0000"> </span><span style="color: #ff0000"> </span><span style="color: #ff0000">and has no value</span>
|
||||||
|
</pre>
|
||||||
10
tree.html
10
tree.html
|
|
@ -1,7 +1,7 @@
|
||||||
<p>
|
<p>
|
||||||
<a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/./">.</a><br/>
|
<a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/./">.</a><br/>
|
||||||
└── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/./firefox/">firefox</a><br/>
|
└── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/./firefox/">firefox</a><br/>
|
||||||
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/./firefox/00-proxy.yml">00-proxy.yml</a><br/>
|
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/./firefox/00-proxy.yml">00-proxy.yml</a><br/>
|
||||||
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/./firefox/10-manual.yml">10-manual.yml</a><br/>
|
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/./firefox/10-manual.yml">10-manual.yml</a><br/>
|
||||||
└── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_042/./firefox/20-manual.yml">20-manual.yml</a><br/>
|
└── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_043/./firefox/20-manual.yml">20-manual.yml</a><br/>
|
||||||
<br/><br/></p>
|
<br/><br/></p>
|
||||||
Loading…
Reference in a new issue