No description
Find a file
2026-03-12 08:10:33 +01:00
config [tutorial v1.1_052] A hidden family (config and doc) 2026-03-12 08:10:33 +01:00
firefox [tutorial v1.1_052] A hidden family 2026-03-12 08:10:33 +01:00
firefox.png [tutorial v1.1_052] A hidden family (config and doc) 2026-03-12 08:10:33 +01:00
foxyproxy.png [init] Discover Rougail 2026-03-12 08:10:13 +01:00
install.txt [init] Discover Rougail 2026-03-12 08:10:13 +01:00
README.md [tutorial v1.1_052] A hidden family (config and doc) 2026-03-12 08:10:33 +01:00
tree.html [tutorial v1.1_052] A hidden family (config and doc) 2026-03-12 08:10:33 +01:00

[tutorial v1.1_052] A hidden family

Read the tutorial "A hidden family" in the documentation

Screenshot

Firefox Proxy setting

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_052

Structure

.
└── firefox
    ├── 00-proxy.yml
    ├── 10-manual.yml
    └── 20-manual.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
    hidden: true

    address:
      description: HTTPS address
      default:
        variable: __.http_proxy.address

    port:
      description: HTTPS Port
      default:
        variable: __.http_proxy.port
...


Let's generate the documentation

rougail -m firefox/ -o doc
Variable Description
proxy_mode
choice mandatory
Configure Proxy Access to the Internet.
Choices:
• No proxy ← (default)
• Auto-detect proxy settings for this network
• Use system proxy settings
• Manual proxy configuration
• Automatic proxy configuration URL

Manual proxy configuration

Note

Path: manual
disabled
Disabled: when the variable "Configure Proxy Access to the Internet" hasn't the value "Manual proxy configuration"

HTTP Proxy

Note

Path: manual.http_proxy

Variable Description
manual.http_proxy.address
domainname mandatory
HTTP address.
Validators:
• type domainname
• the domain name can be an IP
manual.http_proxy.port
port mandatory
HTTP Port.
Validators:
• well-known ports (1 to 1023) are allowed
• registred ports (1024 to 49151) are allowed
• private ports (greater than 49152) are allowed
Default: 8080
Variable Description
manual.use_for_https
boolean mandatory
Also use this proxy for HTTPS.
Default: true

Let's generate the changelog

rougail -m firefox/ -o doc --doc.contents changelog --doc.changelog.previous_json_file previous.yml

Deleted variables

  • manual.https_proxy.address
  • manual.https_proxy.port

User datas

Example 1

config/01/config.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

rougail -m firefox/ -u yaml -yf config/01/config.yml

Warning

  • manual (Manual proxy configuration)
    • https_proxy (HTTPS Proxy)
      • address (HTTPS address): 🔔 family "https_proxy" (HTTPS Proxy) has property hidden, so cannot access to "address" (HTTPS address), it will be ignored when loading from the YAML file "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 address): http.proxy.net ← loaded from the YAML file "config/01/config.yml"
      • 📓 port (HTTP Port): 3128 ← loaded from the YAML file "config/01/config.yml" ( 8080)
    • 📓 use_for_https (Also use this proxy for HTTPS): false ← loaded from the YAML file "config/01/config.yml" ( true)
    • 📂 https_proxy (HTTPS Proxy)
      • 📓 address (HTTPS address): http.proxy.net
      • 📓 port (HTTPS Port): 3128

Output in read write mode

rougail -m firefox/ -u yaml -yf config/01/config.yml --cli.read_write

Warning

  • manual (Manual proxy configuration)
    • https_proxy (HTTPS Proxy)
      • address (HTTPS address): 🔔 family "https_proxy" (HTTPS Proxy) has property hidden, so cannot access to "address" (HTTPS address), it will be ignored when loading from the YAML file "config/01/config.yml"

Note

Caption:

  • Variable
  • 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 address): http.proxy.net ← loaded from the YAML file "config/01/config.yml"
      • 📓 port (HTTP Port): 3128 ← loaded from the YAML file "config/01/config.yml" ( 8080)
    • 📓 use_for_https (Also use this proxy for HTTPS): false ← loaded from the YAML file "config/01/config.yml" ( true)

Example 2

config/02/config.yml

---
proxy_mode: Manual proxy configuration
manual:
  http_proxy:
    address: http.proxy.net
    port: 3128
  use_for_https: true

Output

rougail -m firefox/ -u yaml -yf 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 address): http.proxy.net ← loaded from the YAML file "config/02/config.yml"
      • 📓 port (HTTP Port): 3128 ← loaded from the YAML file "config/02/config.yml" ( 8080)
    • 📓 use_for_https (Also use this proxy for HTTPS): true ← loaded from the YAML file "config/02/config.yml" ( true)
    • 📂 https_proxy (HTTPS Proxy)
      • 📓 address (HTTPS address): http.proxy.net
      • 📓 port (HTTPS Port): 3128