spec.md 857 B

MODIFIED Requirements

Requirement: shadowsocks-rust configuration is templated

The relay server's shadowsocks configuration SHALL be generated from a Jinja2 template with variables for port, password, and cipher method. The relay server SHALL have a configurable domain name (relay_domain) for use in client configuration generation.

Scenario: Configuration is generated from template

  • WHEN the shadowsocks role runs
  • THEN a JSON config file is rendered from template with port, password, and encryption method
  • THEN the config file permissions are restricted (readable only by the service user)

Scenario: Configuration change triggers restart

  • WHEN a variable in group_vars/relay.yml is changed and the playbook is re-run
  • THEN the configuration file is updated
  • THEN the ssserver service is restarted