CluPilotCloud/app/Services
nexxo 5db2f7fda7 feat(hosts): give each host a DNS name under the public zone
fsn-01.node.clupilot.com, numbered per datacenter and never reused — removing a
host must not renumber its neighbours onto its name, so the number is stored
rather than derived.

The record points at the host's WireGuard address, not its public IP: the name
exists so an operator can reach a host by name over the VPN, and publishing a
Proxmox host's public address would hand every scanner a target, which is the
one thing this network design avoids.

DNS is convenience, not a prerequisite: a failure logs an event and lets the
onboarding finish rather than stranding a host that is otherwise ready.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 23:49:18 +02:00
..
Dns feat(hosts): give each host a DNS name under the public zone 2026-07-25 23:49:18 +02:00
Maintenance fix(admin): catch racing ledger insert and re-fetch (idempotent under concurrency) 2026-07-25 16:31:43 +02:00
Monitoring feat(monitoring): Uptime Kuma support via a REST bridge + resilient monitoring policy 2026-07-25 20:04:58 +02:00
Proxmox feat(traffic): meter the monthly allowance, show it, throttle instead of blocking 2026-07-25 23:33:47 +02:00
Ssh fix(engine): long SSH command timeout; wg peer removal on privileged worker 2026-07-25 11:01:02 +02:00
Traefik fix(engine-b): write Traefik route to the serving host over SSH, not locally 2026-07-25 12:55:24 +02:00
Traffic feat(traffic): meter the monthly allowance, show it, throttle instead of blocking 2026-07-25 23:33:47 +02:00
Wireguard fix(vpn): give the QR code the specified four-module quiet zone 2026-07-25 22:40:54 +02:00