mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 19:01:54 +00:00
Path-style invocation in scripts/system/network/dns/common.sh failed with `ImportError: attempted relative import with no known parent package` because cli/meta/domains/__main__.py uses `from . import PROJECT_ROOT`. The DNS host generator silently fell back to a static 3-host list on every bootstrap run (visible in the test-development CI logs). Switch the caller to `PYTHONPATH=<repo> python3 -m cli.meta.domains` so the package context resolves. Keeps the PROJECT_ROOT SPOT (tests/lint/filesystem/python/test_project_root_import.py) intact — no local redefinition. Also: one-line YAML rewrap in compose/cache.override.yml (formatter).
DNS Helpers
This directory holds DNS helpers used during development and environment preparation. The folder contains the local name-resolution setup and teardown logic used during development and environment preparation. For the canonical Make target index that invokes these helpers, see make.md.
Areas
- setup/ for DNS setup scripts
remove.shfor DNS teardowncommon.shfor shared DNS variables and helper functions
Notes
- Canonical domains and aliases come from
roles/*/meta/server.yml - The CLI entrypoint lives in
cli/meta/domains/__main__.py - The reusable generator logic lives in
utils/domains/list.py DOMAIN_PRIMARYis rendered before the list is emitted- The DNS fallback calls the generator with
--alias --www INFINITO_DNS_HOSTScan still override the generated list explicitly