Files
computer-playbook/scripts/tests/deploy
kevinveenbirkenbachandClaude Opus 4.7 39e32f74a5 feat(test): harden swarm-NFS rig — DinD DNS, RUNTIME, mirrors, N/N replicas
DinD DNS chain reworked so the Playwright container run --rm npm install
no longer EAI_AGAINs on registry.npmjs.org:
- 03_start_swarm_nodes.sh runs each DinD with --dns 1.1.1.1/8.8.8.8 and
  pre-seeds /etc/docker/daemon.json. systemd-resolved still clobbers the
  outer resolv.conf at boot, so the daemon-level DNS is the only thing
  that survives for containers the inner daemon spawns.
- daemon.json.j2 omits the "dns" key when networks.internet.dns is empty
  (default), so the rendered config no longer overwrites the pre-seeded
  daemon.json with "dns": [""] and break inner-container resolution.
- 09_write_extras.sh sets networks.internet.dns to a public resolver for
  the test rig and bakes RUNTIME via cli.meta.runtime (so e2e-playwright
  actually runs in act/github instead of being skipped under "host").

07_provision_inventory.sh generates mirrors.yml via
cli.contributing.mirror.resolver and passes --mirror to the inventory
provisioner only when cli.meta.runtime == "github". act/local keeps
upstream pulls (no mirror infrastructure to point at).

12_wait_converge.sh and 15_assert_state.sh accept any N/N replica state
instead of hardcoded 1/1, so multi-host-replica deploys converge cleanly.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-04 17:11:07 +02:00
..