CluPilotCloud/app/Services/Wireguard
nexxo 864126ec7f
tests / pest (push) Failing after 7m28s Details
tests / assets (push) Successful in 19s Details
tests / release (push) Has been skipped Details
Add the SSH identity to the vault, and give deployment config a console page
The SSH private key CluPilot deploys to every host is now stored through
SecretVault (ssh.private_key), preferred over CLUPILOT_SSH_PRIVATE_KEY(_PATH)
at all three real consumers — SshTraefikWriter and HostStep::keyLogin.
kuma.password/kuma.totp stay in .env: they authenticate a separate Python
container at boot, and nothing in this app reads them, so the vault would
have nothing to wire them to.

A new /admin/infrastructure page, backed by App\Support\ProvisioningSettings,
makes the non-secret deployment settings that used to force a shell —
DNS zone, WireGuard hub endpoint and public key, Traefik's dynamic-config
path, the SSH public key, and the monitoring bridge URL — visible and
editable from the console, each wired to every real consumer. WG subnet/hub
IP and Kuma's own connection details stay in .env: the compose file and a
separate container read those before this application ever does.
2026-07-29 00:52:44 +02:00
..
ConfigHandoff.php feat(admin): administrator access to a customer's Nextcloud 2026-07-26 05:30:59 +02:00
ConfigVault.php feat(vpn): ownership, a Developer role, and password-gated config retrieval 2026-07-25 22:31:54 +02:00
FakeWireguardHub.php Read VPN host state from the synced peer table, not a live hub call 2026-07-29 00:18:21 +02:00
Keypair.php feat(admin): VPN access management with live peer state 2026-07-25 21:38:12 +02:00
LocalWireguardHub.php Add the SSH identity to the vault, and give deployment config a console page 2026-07-29 00:52:44 +02:00
PeerSnapshot.php feat(admin): VPN access management with live peer state 2026-07-25 21:38:12 +02:00
QrCode.php fix(vpn): give the QR code the specified four-module quiet zone 2026-07-25 22:40:54 +02:00
WireguardHub.php feat(admin): VPN access management with live peer state 2026-07-25 21:38:12 +02:00