[tutorial v1.1_211] redefines the behavior to password mandatory if the user is defined (config and doc)

This commit is contained in:
egarette@silique.fr 2026-03-12 08:11:20 +01:00
parent 6da7771733
commit 0d683cd302
4 changed files with 150 additions and 190 deletions

244
README.md
View file

@ -1,9 +1,9 @@
- [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_200] Variable calculation with propertyerror](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_200/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_210~1..v1.1_210)) - [[tutorial v1.1_210] Username is mandatory if a password is set](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_211~1..v1.1_211))
# [tutorial v1.1_210] Username is mandatory if a password is set # [tutorial v1.1_211] redefines the behavior to password mandatory if the user is defined
[Read the tutorial "Username is mandatory if a password is set" in the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/jinja.html#username-is-mandatory-if-a-password-is-set) [Read the tutorial "redefines the behavior to password mandatory if the user is defined" in the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/jinja.html#redefines-the-behavior-to-password-mandatory-if-the-user-is-defined)
## Screenshot ## Screenshot
@ -29,7 +29,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_210 git switch --detach v1.1_211
``` ```
## Structure ## Structure
@ -37,24 +37,25 @@ git switch --detach v1.1_210
<p> <p>
<a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./">.</a><br/> <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./">.</a><br/>
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/">firefox</a><br/> ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/">firefox</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/00-proxy.yml">00-proxy.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/00-proxy.yml">00-proxy.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/10-manual.yml">10-manual.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/10-manual.yml">10-manual.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/20-manual.yml">20-manual.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/20-manual.yml">20-manual.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/30-auto.yml">30-auto.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/30-auto.yml">30-auto.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/40-no_proxy.yml">40-no_proxy.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/40-no_proxy.yml">40-no_proxy.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/50-prompt_authentication.yml">50-prompt_authentication.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/50-prompt_authentication.yml">50-prompt_authentication.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/55-proxy_dns_socks5.yml">55-proxy_dns_socks5.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/55-proxy_dns_socks5.yml">55-proxy_dns_socks5.yml</a><br/>
│   └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/60-dns_over_https.yml">60-dns_over_https.yml</a><br/> │   └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/60-dns_over_https.yml">60-dns_over_https.yml</a><br/>
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./foxyproxy/">foxyproxy</a><br/> ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./foxyproxy/">foxyproxy</a><br/>
│   └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./foxyproxy/00-foxyproxy.yml">00-foxyproxy.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./foxyproxy/00-foxyproxy.yml">00-foxyproxy.yml</a><br/>
└── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./types/">types</a><br/> │   └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./foxyproxy/10-redefine.yml">10-redefine.yml</a><br/>
    └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./types/proxy/">proxy</a><br/> └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./types/">types</a><br/>
        └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./types/proxy/00_type.yml">00_type.yml</a><br/>     └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./types/proxy/">proxy</a><br/>
        └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./types/proxy/00_type.yml">00_type.yml</a><br/>
<br/><br/></p> <br/><br/></p>
Contents of the foxyproxy/00-foxyproxy.yml file Contents of the foxyproxy/10-redefine.yml file
```yml ```yml
%YAML 1.2 %YAML 1.2
@ -62,127 +63,18 @@ Contents of the foxyproxy/00-foxyproxy.yml file
version: 1.1 version: 1.1
proxies: proxies:
description: Proxy configuration
_type: leadership
title:
description: Title or Description
mandatory: false
type:
description: Proxy Type
choices:
- HTTP
- HTTPS/SSL
- SOCKS4
- SOCKS5
- PAC URL
- WPAD
- System (use system settings)
- Direct (no proxy)
default: Direct (no proxy)
color:
description: Color
regexp: ^#(?:[0-9a-f]{3}){1,2}$
default:
jinja: >-
#{%- for i in range(6) -%}{{- '0123456789abcdef' | random -}}{%- endfor -%}
description: random color value
auto_save: true
address:
description: IP address, DNS name, server name
type: domainname
params:
allow_ip: true
allow_without_dot: true
default:
description: copy HTTP address if proxy is not "Manual"
variable: firefox.manual.http_proxy.address
propertyerror: false
disabled:
jinja: |-
{{ _.type not in ['HTTP', 'HTTPS/SSL', 'SOCKS4', 'SOCKS5'] }}
return_type: boolean
description: |-
if type not in:
- HTTP
- HTTPS/SSL
- SOCKS4
- SOCKS5
port:
description: Port
type: port
default:
description: copy HTTP port if proxy is not "Manual"
variable: firefox.manual.http_proxy.port
propertyerror: false
disabled:
jinja: |-
{{ _.type not in ['HTTP', 'HTTPS/SSL', 'SOCKS4', 'SOCKS5'] }}
return_type: boolean
description: |-
if type not in:
- HTTP
- HTTPS/SSL
- SOCKS4
- SOCKS5
username: username:
description: Username redefine: true
type: unix_user mandatory: false
mandatory:
jinja: |-
{% if _.password is not propertyerror and _.password %}
true
{% else %}
false
{% endif %}
return_type: boolean
description: if a password is set
disabled:
jinja: |-
{{ _.type not in ['HTTP', 'HTTPS/SSL', 'SOCKS4', 'SOCKS5'] }}
return_type: boolean
description: |-
if type not in:
- HTTP
- HTTPS/SSL
- SOCKS4
- SOCKS5
password: password:
description: Password redefine: true
type: secret hidden:
mandatory: false
disabled:
jinja: |- jinja: |-
{{ _.type not in ['HTTP', 'HTTPS/SSL', 'SOCKS4', 'SOCKS5'] }} {{ not _.username }}
return_type: boolean return_type: boolean
description: |- description: if username is empty
if type not in:
- HTTP
- HTTPS/SSL
- SOCKS4
- SOCKS5
url:
description: URL
type: web_address
default:
description: copy HTTP address if proxy is "Auto"
variable: firefox.auto
propertyerror: false
disabled:
jinja: |-
{{ _.type not in ['PAC URL', 'WPAD'] }}
return_type: boolean
description: |-
if type is not in:
- PAC URL
- WPAD
... ...
``` ```
@ -291,16 +183,16 @@ rougail -m firefox/ -s Firefox -xn FoxyProxy -xd 0 foxyproxy/ --types types/prox
> **Path**: foxyproxy.proxies\ > **Path**: foxyproxy.proxies\
> `basic` > `basic`
| Variable | Description | | Variable | Description |
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **<a id="foxyproxy.proxies.title" name="foxyproxy.proxies.title">foxyproxy.proxies.title</a>**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` `standard` `unique` | Title or Description. | | **<a id="foxyproxy.proxies.title" name="foxyproxy.proxies.title">foxyproxy.proxies.title</a>**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` `standard` `unique` | Title or Description. |
| **<a id="foxyproxy.proxies.type" name="foxyproxy.proxies.type">foxyproxy.proxies.type</a>**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | Proxy Type.<br/>**Choices**: <br/>&nbsp;HTTP<br/>&nbsp;HTTPS/SSL<br/>&nbsp;SOCKS4<br/>&nbsp;SOCKS5<br/>&nbsp;PAC URL<br/>&nbsp;WPAD<br/>&nbsp;System (use system settings)<br/>&nbsp;Direct (no proxy) **← (default)** | | **<a id="foxyproxy.proxies.type" name="foxyproxy.proxies.type">foxyproxy.proxies.type</a>**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | Proxy Type.<br/>**Choices**: <br/>&nbsp;HTTP<br/>&nbsp;HTTPS/SSL<br/>&nbsp;SOCKS4<br/>&nbsp;SOCKS5<br/>&nbsp;PAC URL<br/>&nbsp;WPAD<br/>&nbsp;System (use system settings)<br/>&nbsp;Direct (no proxy) **← (default)** |
| **<a id="foxyproxy.proxies.color" name="foxyproxy.proxies.color">foxyproxy.proxies.color</a>**<br/>[`regexp`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` `auto modified` | Color.<br/>**Validator**: text based with regular expressions "^#(?:[0-9a-f]{3}){1,2}$"<br/>**Default**: random color value | | **<a id="foxyproxy.proxies.color" name="foxyproxy.proxies.color">foxyproxy.proxies.color</a>**<br/>[`regexp`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` `auto modified` | Color.<br/>**Validator**: text based with regular expressions "^#(?:[0-9a-f]{3}){1,2}$"<br/>**Default**: random color value |
| **<a id="foxyproxy.proxies.address" name="foxyproxy.proxies.address">foxyproxy.proxies.address</a>**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | IP address, DNS name, server name.<br/>**Validators**: <br/>&nbsp;type domainname<br/>&nbsp;the domain name can be a hostname<br/>&nbsp;the domain name can be an IP<br/>**Default**: copy HTTP address if proxy is not "Manual"<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 | | **<a id="foxyproxy.proxies.address" name="foxyproxy.proxies.address">foxyproxy.proxies.address</a>**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | IP address, DNS name, server name.<br/>**Validators**: <br/>&nbsp;type domainname<br/>&nbsp;the domain name can be a hostname<br/>&nbsp;the domain name can be an IP<br/>**Default**: copy HTTP address if proxy is not "Manual"<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 |
| **<a id="foxyproxy.proxies.port" name="foxyproxy.proxies.port">foxyproxy.proxies.port</a>**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | Port.<br/>**Validators**: <br/>&nbsp;well-known ports (1 to 1023) are allowed<br/>&nbsp;registred ports (1024 to 49151) are allowed<br/>&nbsp;private ports (greater than 49152) are allowed<br/>**Default**: copy HTTP port if proxy is not "Manual"<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 | | **<a id="foxyproxy.proxies.port" name="foxyproxy.proxies.port">foxyproxy.proxies.port</a>**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | Port.<br/>**Validators**: <br/>&nbsp;well-known ports (1 to 1023) are allowed<br/>&nbsp;registred ports (1024 to 49151) are allowed<br/>&nbsp;private ports (greater than 49152) are allowed<br/>**Default**: copy HTTP port if proxy is not "Manual"<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 |
| **<a id="foxyproxy.proxies.username" name="foxyproxy.proxies.username">foxyproxy.proxies.username</a>**<br/>[`UNIX user`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` *`mandatory`* *`disabled`* | Username.<br/>**Mandatory**: if a password is set<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 | | **<a id="foxyproxy.proxies.username" name="foxyproxy.proxies.username">foxyproxy.proxies.username</a>**<br/>[`UNIX user`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` *`disabled`* | Username.<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 |
| **<a id="foxyproxy.proxies.password" name="foxyproxy.proxies.password">foxyproxy.proxies.password</a>**<br/>[`secret`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` *`disabled`* | Password.<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 | | **<a id="foxyproxy.proxies.password" name="foxyproxy.proxies.password">foxyproxy.proxies.password</a>**<br/>[`secret`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` *`hidden`* *`disabled`* | Password.<br/>**Hidden**: if username is empty<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 |
| **<a id="foxyproxy.proxies.url" name="foxyproxy.proxies.url">foxyproxy.proxies.url</a>**<br/>[`web address`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | URL.<br/>**Validators**: <br/>&nbsp;well-known ports (1 to 1023) are allowed<br/>&nbsp;registred ports (1024 to 49151) are allowed<br/>&nbsp;type domainname<br/>&nbsp;the domain name can be a hostname<br/>**Default**: copy HTTP address if proxy is "Auto"<br/>**Disabled**: if type is not in:<br/>- PAC URL<br/>- WPAD | | **<a id="foxyproxy.proxies.url" name="foxyproxy.proxies.url">foxyproxy.proxies.url</a>**<br/>[`web address`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | URL.<br/>**Validators**: <br/>&nbsp;well-known ports (1 to 1023) are allowed<br/>&nbsp;registred ports (1024 to 49151) are allowed<br/>&nbsp;type domainname<br/>&nbsp;the domain name can be a hostname<br/>**Default**: copy HTTP address if proxy is "Auto"<br/>**Disabled**: if type is not in:<br/>- PAC URL<br/>- WPAD |
*** ***
@ -309,18 +201,13 @@ rougail -m firefox/ -s Firefox -xn FoxyProxy -xd 0 foxyproxy/ --types types/prox
```shell ```shell
rougail -m firefox/ -s Firefox -xn FoxyProxy -xd 0 foxyproxy/ --types types/proxy --modes_level basic standard advanced -o doc --doc.contents changelog --doc.changelog.previous_json_file previous.yml rougail -m firefox/ -s Firefox -xn FoxyProxy -xd 0 foxyproxy/ --types types/proxy --modes_level basic standard advanced -o doc --doc.contents changelog --doc.changelog.previous_json_file previous.yml
``` ```
#### New variables #### Modified variables
| Variable | Description | | Variable | Description |
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------| |----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------|
| **<a id="foxyproxy.proxies.username" name="foxyproxy.proxies.username">foxyproxy.proxies.username</a>**<br/>[`UNIX user`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` *`mandatory`* *`disabled`* | Username.<br/>**Mandatory**: if a password is set<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 | | **<a id="foxyproxy.proxies.color" name="foxyproxy.proxies.color">foxyproxy.proxies.color</a>**<br/>[`regexp`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` `auto modified` | Color.<br/>**Validator**: text based with regular expressions "^#(?:[0-9a-f]{3}){1,2}$"<br/>**Default**: random color value |
| **<a id="foxyproxy.proxies.password" name="foxyproxy.proxies.password">foxyproxy.proxies.password</a>**<br/>[`secret`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` *`disabled`* | Password.<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 | | **<a id="foxyproxy.proxies.username" name="foxyproxy.proxies.username">foxyproxy.proxies.username</a>**<br/>~~`mandatory`~~ [`UNIX user`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` *`disabled`* | Username.<br/>**Mandatory**: ~~if a password is set~~<br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 |
| **<a id="foxyproxy.proxies.password" name="foxyproxy.proxies.password">foxyproxy.proxies.password</a>**<br/>[`secret`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` <ins>*`hidden`*</ins> *`disabled`* | Password.<br/>**Hidden**: <ins>if username is empty</ins><br/>**Disabled**: if type not in:<br/>- HTTP<br/>- HTTPS/SSL<br/>- SOCKS4<br/>- SOCKS5 |
#### Modified variable
| Variable | Description |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------|
| **<a id="foxyproxy.proxies.color" name="foxyproxy.proxies.color">foxyproxy.proxies.color</a>**<br/>[`regexp`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` `auto modified` | Color.<br/>**Validator**: text based with regular expressions "^#(?:[0-9a-f]{3}){1,2}$"<br/>**Default**: random color value |
*** ***
@ -388,6 +275,7 @@ rougail -m firefox/ -s Firefox -xn FoxyProxy -xd 0 foxyproxy/ --types types/prox
> >
> **Caption:** > **Caption:**
> - Variable > - Variable
> - <span style="color: #A52A2A">Unmodifiable variable</span>
> - <span style="color: #B8860B">Default value</span> > - <span style="color: #B8860B">Default value</span>
> - <span style="color: #006400">Modified value</span> > - <span style="color: #006400">Modified value</span>
> - (:hourglass_flowing_sand: Original default value) > - (:hourglass_flowing_sand: Original default value)
@ -410,11 +298,11 @@ Variables:
- :open_file_folder: title (Title or Description) - :open_file_folder: title (Title or Description)
- :notebook: title (Title or Description): <span style="color: #006400">An other company</span> ← loaded from the YAML file "config/02/config.yml" - :notebook: title (Title or Description): <span style="color: #006400">An other company</span> ← loaded from the YAML file "config/02/config.yml"
- :notebook: type (Proxy Type): <span style="color: #006400">HTTP</span> ← loaded from the YAML file "config/02/config.yml" (:hourglass_flowing_sand: Direct (no proxy)) - :notebook: type (Proxy Type): <span style="color: #006400">HTTP</span> ← loaded from the YAML file "config/02/config.yml" (:hourglass_flowing_sand: Direct (no proxy))
- :notebook: color (Color): <span style="color: #006400">#d82f2b</span> - :notebook: color (Color): <span style="color: #006400">#d5ce53</span>
- :notebook: address (IP address, DNS name, server name): <span style="color: #006400">proxy.company.net</span> ← loaded from the YAML file "config/02/config.yml" - :notebook: address (IP address, DNS name, server name): <span style="color: #006400">proxy.company.net</span> ← loaded from the YAML file "config/02/config.yml"
- :notebook: port (Port): <span style="color: #006400">8080</span> ← loaded from the YAML file "config/02/config.yml" - :notebook: port (Port): <span style="color: #006400">8080</span> ← loaded from the YAML file "config/02/config.yml"
- :notebook: username (Username): <span style="color: #B8860B">null</span> - :notebook: username (Username): <span style="color: #B8860B">null</span>
- :notebook: password (Password): <span style="color: #B8860B">null</span> - :notebook: <span style="color: #A52A2A">password (Password)</span>: <span style="color: #B8860B">null</span>
*** ***
### Example 3 ### Example 3
@ -444,13 +332,43 @@ foxyproxy:
```shell ```shell
rougail -m firefox/ -s Firefox -xn FoxyProxy -xd 0 foxyproxy/ --types types/proxy --modes_level basic standard advanced -u yaml -yf config/03/config.yml rougail -m firefox/ -s Firefox -xn FoxyProxy -xd 0 foxyproxy/ --types types/proxy --modes_level basic standard advanced -u yaml -yf config/03/config.yml
``` ```
> [!CAUTION] > [!WARNING]
> >
> - foxyproxy (FoxyProxy) > - foxyproxy (FoxyProxy)
> - proxies (Proxy configuration) > - proxies (Proxy configuration)
> - username (Username): :stop_sign: <span style="color: #C23636">mandatory variable at index "0" but has no value</span> > - password (Password): :bell: <span style="color: #EFBF04">variable "password" (Password) at index "0" is hidden, it will be ignored when loading from the YAML file "config/03/config.yml"</span>
> [!NOTE]
>
> **Caption:**
> - Variable
> - <span style="color: #A52A2A">Unmodifiable variable</span>
> - <span style="color: #B8860B">Default value</span>
> - <span style="color: #006400">Modified value</span>
> - (:hourglass_flowing_sand: Original default value)
Variables:
- :open_file_folder: firefox (Firefox)
- :notebook: proxy_mode (Configure Proxy Access to the Internet): <span style="color: #B8860B">No proxy</span>
- :open_file_folder: dns_over_https (DNS over HTTPS)
- :notebook: enable_dns_over_https (Enable DNS over HTTPS): <span style="color: #B8860B">false</span>
- :open_file_folder: foxyproxy (FoxyProxy)
- :open_file_folder: proxies (Proxy configuration)
- :open_file_folder: title (Title or Description)
- :notebook: title (Title or Description): <span style="color: #006400">My company</span> ← loaded from the YAML file "config/03/config.yml"
- :notebook: type (Proxy Type): <span style="color: #006400">HTTP</span> ← loaded from the YAML file "config/03/config.yml" (:hourglass_flowing_sand: Direct (no proxy))
- :notebook: color (Color): <span style="color: #006400">#66cc66</span> ← loaded from the YAML file "config/03/config.yml"
- :notebook: address (IP address, DNS name, server name): <span style="color: #006400">proxy.company.net</span> ← loaded from the YAML file "config/03/config.yml"
- :notebook: port (Port): <span style="color: #006400">8080</span> ← loaded from the YAML file "config/03/config.yml"
- :notebook: username (Username): <span style="color: #B8860B">null</span>
- :notebook: <span style="color: #A52A2A">password (Password)</span>: <span style="color: #B8860B">null</span>
- :open_file_folder: title (Title or Description)
- :notebook: title (Title or Description): <span style="color: #006400">An other company</span> ← loaded from the YAML file "config/03/config.yml"
- :notebook: type (Proxy Type): <span style="color: #006400">HTTP</span> ← loaded from the YAML file "config/03/config.yml" (:hourglass_flowing_sand: Direct (no proxy))
- :notebook: color (Color): <span style="color: #006400">#4fef30</span>
- :notebook: address (IP address, DNS name, server name): <span style="color: #006400">proxy.company.net</span> ← loaded from the YAML file "config/03/config.yml"
- :notebook: port (Port): <span style="color: #006400">8080</span> ← loaded from the YAML file "config/03/config.yml"
- :notebook: username (Username): <span style="color: #B8860B">null</span>
- :notebook: <span style="color: #A52A2A">password (Password)</span>: <span style="color: #B8860B">null</span>
*** ***
- [[tutorial v1.1_211] redefines the behavior to password mandatory if the user is defined](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_211~1..v1.1_211))

View file

@ -1,8 +1,8 @@
<pre>╭────────────── Caption ───────────────╮ <pre>╭───────────────────── Caption ─────────────────────╮
│ Variable <span style="color: #ffd700">Default value</span> │ Variable <span style="color: #ffd700">Default value</span>
<span style="color: #00aa00">Modified value</span> <span style="color: #ffaf00">Unmodifiable variable</span> <span style="color: #00aa00">Modified value</span>
│ (⏳ Original default value) │ (⏳ Original default value) │
╰──────────────────────────────────────╯ ╰───────────────────────────────────────────────────
Variables: Variables:
<span style="color: #5c5cff">┣━━ </span>📂 firefox (Firefox) <span style="color: #5c5cff">┣━━ </span>📂 firefox (Firefox)
<span style="color: #5c5cff"></span><span style="color: #5c5cff">┣━━ </span>📓 proxy_mode (Configure Proxy Access to the Internet): <span style="color: #ffd700">No proxy</span> <span style="color: #5c5cff"></span><span style="color: #5c5cff">┣━━ </span>📓 proxy_mode (Configure Proxy Access to the Internet): <span style="color: #ffd700">No proxy</span>
@ -31,12 +31,12 @@ Variables:
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>the YAML file "config/02/config.yml" <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>the YAML file "config/02/config.yml"
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 type (Proxy Type): <span style="color: #00aa00">HTTP</span> ◀ loaded from the YAML file <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 type (Proxy Type): <span style="color: #00aa00">HTTP</span> ◀ loaded from the YAML file
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>"config/02/config.yml" (⏳ Direct (no proxy)) <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>"config/02/config.yml" (⏳ Direct (no proxy))
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 color (Color): <span style="color: #00aa00">#d82f2b</span> <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 color (Color): <span style="color: #00aa00">#d5ce53</span>
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 address (IP address, DNS name, server name): <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 address (IP address, DNS name, server name):
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #00aa00">proxy.company.net</span> ◀ loaded from the YAML file <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #00aa00">proxy.company.net</span> ◀ loaded from the YAML file
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>"config/02/config.yml" <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>"config/02/config.yml"
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 port (Port): <span style="color: #00aa00">8080</span> ◀ loaded from the YAML file <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 port (Port): <span style="color: #00aa00">8080</span> ◀ loaded from the YAML file
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>"config/02/config.yml" <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>"config/02/config.yml"
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 username (Username): <span style="color: #ffd700">null</span> <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 username (Username): <span style="color: #ffd700">null</span>
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┗━━ </span>📓 password (Password): <span style="color: #ffd700">null</span> <span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┗━━ </span>📓 <span style="color: #ffaf00">password (Password)</span>: <span style="color: #ffd700">null</span>
</pre> </pre>

View file

@ -1,6 +1,47 @@
<pre><span style="font-weight: bold; color: #ff0000">🛑 Caution</span> <pre><span style="font-weight: bold; color: #ffff00">🔔 Warning</span>
<span style="color: #ff0000">┗━━ </span>foxyproxy (FoxyProxy) <span style="color: #ffff00">┗━━ </span>foxyproxy (FoxyProxy)
<span style="color: #ff0000"> </span><span style="color: #ff0000">┗━━ </span>proxies (Proxy configuration) <span style="color: #ffff00"> </span><span style="color: #ffff00">┗━━ </span>proxies (Proxy configuration)
<span style="color: #ff0000"> </span><span style="color: #ff0000"> </span><span style="color: #ff0000">┗━━ </span>username (Username): <span style="color: #ff0000">🛑 mandatory variable at index "0" but has no </span> <span style="color: #ffff00"> </span><span style="color: #ffff00"> </span><span style="color: #ffff00">┗━━ </span>password (Password): <span style="color: #ffff00">🔔 variable "password" (Password) at index "0" </span>
<span style="color: #ff0000"> </span><span style="color: #ff0000"> </span><span style="color: #ff0000"> </span><span style="color: #ff0000">value</span> <span style="color: #ffff00"> </span><span style="color: #ffff00"> </span><span style="color: #ffff00"> </span><span style="color: #ffff00">is hidden, it will be ignored when loading from the YAML file </span>
<span style="color: #ffff00"> </span><span style="color: #ffff00"> </span><span style="color: #ffff00"> </span><span style="color: #ffff00">"config/03/config.yml"</span>
╭───────────────────── Caption ─────────────────────╮
│ Variable <span style="color: #ffd700">Default value</span>
<span style="color: #ffaf00">Unmodifiable variable</span> <span style="color: #00aa00">Modified value</span>
│ (⏳ Original default value) │
╰───────────────────────────────────────────────────╯
Variables:
<span style="color: #5c5cff">┣━━ </span>📂 firefox (Firefox)
<span style="color: #5c5cff"></span><span style="color: #5c5cff">┣━━ </span>📓 proxy_mode (Configure Proxy Access to the Internet): <span style="color: #ffd700">No proxy</span>
<span style="color: #5c5cff"></span><span style="color: #5c5cff">┗━━ </span>📂 dns_over_https (DNS over HTTPS)
<span style="color: #5c5cff"></span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┗━━ </span>📓 enable_dns_over_https (Enable DNS over HTTPS): <span style="color: #ffd700">false</span>
<span style="color: #5c5cff">┗━━ </span>📂 foxyproxy (FoxyProxy)
<span style="color: #5c5cff"> </span><span style="color: #5c5cff">┗━━ </span>📂 proxies (Proxy configuration)
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📂 title (Title or Description)
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff">┣━━ </span>📓 title (Title or Description): <span style="color: #00aa00">My company</span> ◀ loaded from the
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff"></span>YAML file "config/03/config.yml"
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff">┣━━ </span>📓 type (Proxy Type): <span style="color: #00aa00">HTTP</span> ◀ loaded from the YAML file
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff"></span>"config/03/config.yml" (⏳ Direct (no proxy))
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff">┣━━ </span>📓 color (Color): <span style="color: #00aa00">#66cc66</span> ◀ loaded from the YAML file
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff"></span>"config/03/config.yml"
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff">┣━━ </span>📓 address (IP address, DNS name, server name):
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff"></span><span style="color: #00aa00">proxy.company.net</span> ◀ loaded from the YAML file
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff"></span>"config/03/config.yml"
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff">┣━━ </span>📓 port (Port): <span style="color: #00aa00">8080</span> ◀ loaded from the YAML file
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff"></span>"config/03/config.yml"
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff">┣━━ </span>📓 username (Username): <span style="color: #ffd700">null</span>
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #5c5cff">┗━━ </span>📓 <span style="color: #ffaf00">password (Password)</span>: <span style="color: #ffd700">null</span>
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┗━━ </span>📂 title (Title or Description)
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 title (Title or Description): <span style="color: #00aa00">An other company</span> ◀ loaded from
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>the YAML file "config/03/config.yml"
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 type (Proxy Type): <span style="color: #00aa00">HTTP</span> ◀ loaded from the YAML file
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>"config/03/config.yml" (⏳ Direct (no proxy))
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 color (Color): <span style="color: #00aa00">#4fef30</span>
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 address (IP address, DNS name, server name):
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span><span style="color: #00aa00">proxy.company.net</span> ◀ loaded from the YAML file
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>"config/03/config.yml"
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 port (Port): <span style="color: #00aa00">8080</span> ◀ loaded from the YAML file
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"></span>"config/03/config.yml"
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┣━━ </span>📓 username (Username): <span style="color: #ffd700">null</span>
<span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff"> </span><span style="color: #5c5cff">┗━━ </span>📓 <span style="color: #ffaf00">password (Password)</span>: <span style="color: #ffd700">null</span>
</pre> </pre>

View file

@ -1,17 +1,18 @@
<p> <p>
<a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./">.</a><br/> <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./">.</a><br/>
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/">firefox</a><br/> ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/">firefox</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/00-proxy.yml">00-proxy.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/00-proxy.yml">00-proxy.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/10-manual.yml">10-manual.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/10-manual.yml">10-manual.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/20-manual.yml">20-manual.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/20-manual.yml">20-manual.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/30-auto.yml">30-auto.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/30-auto.yml">30-auto.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/40-no_proxy.yml">40-no_proxy.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/40-no_proxy.yml">40-no_proxy.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/50-prompt_authentication.yml">50-prompt_authentication.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/50-prompt_authentication.yml">50-prompt_authentication.yml</a><br/>
│   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/55-proxy_dns_socks5.yml">55-proxy_dns_socks5.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/55-proxy_dns_socks5.yml">55-proxy_dns_socks5.yml</a><br/>
│   └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./firefox/60-dns_over_https.yml">60-dns_over_https.yml</a><br/> │   └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./firefox/60-dns_over_https.yml">60-dns_over_https.yml</a><br/>
├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./foxyproxy/">foxyproxy</a><br/> ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./foxyproxy/">foxyproxy</a><br/>
│   └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./foxyproxy/00-foxyproxy.yml">00-foxyproxy.yml</a><br/> │   ├── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./foxyproxy/00-foxyproxy.yml">00-foxyproxy.yml</a><br/>
└── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./types/">types</a><br/> │   └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./foxyproxy/10-redefine.yml">10-redefine.yml</a><br/>
    └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./types/proxy/">proxy</a><br/> └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./types/">types</a><br/>
        └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_210/./types/proxy/00_type.yml">00_type.yml</a><br/>     └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./types/proxy/">proxy</a><br/>
        └── <a href="https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_211/./types/proxy/00_type.yml">00_type.yml</a><br/>
<br/><br/></p> <br/><br/></p>