No description
Find a file
2025-11-07 06:16:16 +01:00
config [tutorial v1.1_026)] A variable with type "boolean" (config and doc) 2025-11-07 06:16:16 +01:00
firefox [tutorial 026] A variable with type "boolean" 2025-11-07 06:16:16 +01:00
firefox.png [tutorial v1.1_026)] A variable with type "boolean" (config and doc) 2025-11-07 06:16:16 +01:00
foxyproxy.png [init] Discover Rougail 2025-11-07 06:16:04 +01:00
README.md [tutorial v1.1_026)] A variable with type "boolean" (config and doc) 2025-11-07 06:16:16 +01:00

[tutorial v1.1_026)] A variable with type "boolean"

View the diff

Screenshot

Firefox Proxy setting

Structure

firefox/00-proxy.yml

%YAML 1.2
---
version: 1.1

proxy_mode:
  description: Configure Proxy Access to the Internet
  choices:
    - No proxy
    - Auto-detect proxy settings for this network
    - Use system proxy settings
    - Manual proxy configuration
    - Automatic proxy configuration URL
  default: No proxy
...

firefox/10-manual.yml

%YAML 1.2
---
version: 1.1

manual:  # Manual proxy configuration

  http_proxy:  # HTTP Proxy

    address:
      description: HTTP address
      type: domainname
      params:
        allow_ip: true

    port:
      description: HTTP Port
      type: port
      default: 8080
...

firefox/20-manual.yml

%YAML 1.2
---
version: 1.1

manual:

  use_for_https: true  # Also use this proxy for HTTPS
...

Let's generate the documentation

foo@bar:~$ git switch --detach v1.1_026
foo@bar:~$ 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

manual

HTTP Proxy

manual.http_proxy

Variable                                                                                            Description                                                                                        
manual.http_proxy.address
domainname mandatory
HTTP address.
Validator: 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

foo@bar:~$ git switch --detach v1.1_026
foo@bar:~$ rougail -m firefox/ -o doc --doc.contents changelog

New variable

Variable                                                                                         Description                                                                                     
manual.use_for_https
boolean mandatory
Also use this proxy for HTTPS.
Default: true

User datas

Example 1

config/01/config.yaml

---

Output

foo@bar:~$ git switch --detach v1.1_026
foo@bar:~$ rougail -m firefox/ -u yaml -ff config/01/config.yaml
🛑 ERRORS
┗━━ The following variables are mandatory but have no value:
    ┗━━ Manual proxy configuration
        ┗━━ HTTP Proxy
            ┗━━ HTTP address

Example 2

config/02/config.yaml

---
proxy_mode: No proxy

Output

foo@bar:~$ git switch --detach v1.1_026
foo@bar:~$ rougail -m firefox/ -u yaml -ff config/02/config.yaml
🛑 ERRORS
┗━━ The following variables are mandatory but have no value:
    ┗━━ Manual proxy configuration
        ┗━━ HTTP Proxy
            ┗━━ HTTP address

Example 3

config/03/config.yaml

---
proxy_mode: Manual proxy configuration

Output

foo@bar:~$ git switch --detach v1.1_026
foo@bar:~$ rougail -m firefox/ -u yaml -ff config/03/config.yaml
🛑 ERRORS
┗━━ The following variables are mandatory but have no value:
    ┗━━ Manual proxy configuration
        ┗━━ HTTP Proxy
            ┗━━ HTTP address

Example 4

config/04/config.yaml

---
proxy_mode: foo

Output

foo@bar:~$ git switch --detach v1.1_026
foo@bar:~$ rougail -m firefox/ -u yaml -ff config/04/config.yaml
🔔 WARNINGS
┗━━ the value "foo" is an invalid choice for "proxy_mode" (Configure Proxy Access to the Internet), only "Auto-detect proxy settings for this network", "Automatic proxy configuration URL", "Manual proxy 
    configuration", "No proxy" and "Use system proxy settings" are allowed, it will be ignored when loading from the YAML file "config/04/config.yaml"
🛑 ERRORS
┗━━ The following variables are mandatory but have no value:
    ┗━━ Manual proxy configuration
        ┗━━ HTTP Proxy
            ┗━━ HTTP address

Example 5

config/05/config.yaml

---
proxy_mode: 1

Output

foo@bar:~$ git switch --detach v1.1_026
foo@bar:~$ rougail -m firefox/ -u yaml -ff config/05/config.yaml
🔔 WARNINGS
┗━━ the value "1" is an invalid choice for "proxy_mode" (Configure Proxy Access to the Internet), only "Auto-detect proxy settings for this network", "Automatic proxy configuration URL", "Manual proxy 
    configuration", "No proxy" and "Use system proxy settings" are allowed, it will be ignored when loading from the YAML file "config/05/config.yaml"
🛑 ERRORS
┗━━ The following variables are mandatory but have no value:
    ┗━━ Manual proxy configuration
        ┗━━ HTTP Proxy
            ┗━━ HTTP address