7.5 KiB
7.5 KiB
[tutorial v1.1_091] Variables disabled when condition is null
- Read the tutorial "Variables disabled when condition is null" in the documentation
- View the changes in the files
Screenshot
Clone and install
To test this tutorial, you need to download this repository and install Rougail:
git clone -b 1.1 https://forge.cloud.silique.fr/stove/rougail-tutorials.git
cd rougail-tutorials
python -m venv venv_rougail
. venv_rougail/bin/activate
pip install rougail-cli rougail-output-exporter rougail-output-doc rougail-user-data-yaml
Then switch to the tutorial page:
git switch --detach v1.1_091
Structure
.
├── firefox
│ ├── 00-proxy.yml
│ ├── 10-manual.yml
│ └── 20-manual.yml
└── types
└── proxy
└── 00-type.yml
Contents of the firefox/20-manual.yml file
%YAML 1.2
---
version: 1.1
manual:
use_for_https: true # Also use this proxy for HTTPS
https_proxy:
description: HTTPS Proxy
type: proxy
hidden:
variable: _.use_for_https
address:
redefine: true
description: HTTPS proxy address
port:
redefine: true
description: HTTPS proxy port
socks_proxy:
description: SOCKS Proxy
type: proxy
address:
redefine: true
description: SOCKS proxy address
default: null
mandatory: false
port:
redefine: true
description: SOCKS proxy port
default: 1080
disabled:
variable: _.address
when: null
version:
description: SOCKS host version used by proxy
choices:
- v4
- v5
default: v5
disabled:
variable: _.address
when: null
...
Let's generate the documentation
rougail -m firefox/ --types types/proxy -o doc
Let's generate the changelog
rougail -m firefox/ --types types/proxy -o doc --doc.contents changelog --doc.changelog.previous_json_file previous.yml
User datas
Example 1
config/01/config.yml
---
proxy_mode: Manual proxy configuration
manual:
http_proxy:
address: http.proxy.net
Output
rougail -m firefox/ --types types/proxy -u yaml -yf config/01/config.yml
Note
Caption:
- Variable
- Unmodifiable variable
- Default value
- Modified value
- (⏳ Original default value)
Variables:
- 📓 proxy_mode (Configure Proxy Access to the Internet): Manual proxy configuration ← loaded from the YAML file "config/01/config.yml" (⏳ No proxy)
- 📂 manual (Manual proxy configuration)
- 📂 http_proxy (HTTP Proxy)
- 📓 address (HTTP proxy address): http.proxy.net ← loaded from the YAML file "config/01/config.yml"
- 📓 port (HTTP proxy port): 8080
- 📓 use_for_https (Also use this proxy for HTTPS): true
- 📂 https_proxy (HTTPS Proxy)
- 📓 address (HTTPS proxy address): http.proxy.net
- 📓 port (HTTPS proxy port): 8080
- 📂 socks_proxy (SOCKS Proxy)
- 📓 address (SOCKS proxy address): null
- 📂 http_proxy (HTTP Proxy)
Example 2
config/02/config.yml
---
proxy_mode: Manual proxy configuration
manual:
http_proxy:
address: http.proxy.net
socks_proxy:
adress: socks.proxy.net
Output
rougail -m firefox/ --types types/proxy -u yaml -yf config/02/config.yml
Warning
- manual (Manual proxy configuration)
- socks_proxy (SOCKS Proxy): 🔔 variable or family "adress" does not exist so cannot load "manual.socks_proxy.adress", it will be ignored when loading from the YAML file "config/02/config.yml"
Note
Caption:
- Variable
- Unmodifiable variable
- Default value
- Modified value
- (⏳ Original default value)
Variables:
- 📓 proxy_mode (Configure Proxy Access to the Internet): Manual proxy configuration ← loaded from the YAML file "config/02/config.yml" (⏳ No proxy)
- 📂 manual (Manual proxy configuration)
- 📂 http_proxy (HTTP Proxy)
- 📓 address (HTTP proxy address): http.proxy.net ← loaded from the YAML file "config/02/config.yml"
- 📓 port (HTTP proxy port): 8080
- 📓 use_for_https (Also use this proxy for HTTPS): true
- 📂 https_proxy (HTTPS Proxy)
- 📓 address (HTTPS proxy address): http.proxy.net
- 📓 port (HTTPS proxy port): 8080
- 📂 socks_proxy (SOCKS Proxy)
- 📓 address (SOCKS proxy address): null
- 📂 http_proxy (HTTP Proxy)