mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-07 19:32:17 +00:00
test-e2e-cli loads test.env with `set -a && . test.env && set +a`. The unquoted `ONION_PORTS=25 80 110 ...` is not an assignment there but the command `80` with a one-word env prefix: bash prints `command not found`, leaves ONION_PORTS unset, and onion_ports.py reports "no onion-forwarded ports declared; nothing to probe". The port check passed vacuously in every tor job with more than one forwarded port (OpenResty, Listmonk, Pixelfed in run 35661520542) and only ran where a single port was declared. Pass the value through dotenv_quote, which quotes a space-separated value in both compose and swarm and keeps the env-file lint satisfied. A unit test renders the template in both modes and sources it the way test-e2e-cli does. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>