Commit Graph
4 Commits
Author SHA1 Message Date
evangelostsak 64cacad4b9 refactor: drop rationale and narration from roles/svc-net-wireguard/meta/secrets.yml 2026-10-16 19:10:01 +02:00
evangelostsak 188e4bd307 refactor(svc-net-wireguard): collapse the per-mesh keys into one 2026-09-25 22:35:22 +02:00
evangelostsak 234f458b31 fix(wireguard): pin the mesh keys against the generic credential rotation
The rotation gate wipes every generated credential so the next deploy has to
carry it. That is right for a per-host secret and wrong for this one: the mesh
keys are correlated across hosts, and the writer that mints them runs once per
round, before the first deploy. Wiped and not rewritten, the update pass would
render an interface with an empty PrivateKey.

rotatable: false says who owns them. The mesh rotates when the writer is asked
to rotate it, as one atomic pass over every member, which is the only way a
mesh can rotate without partitioning.
2026-09-19 09:01:05 +02:00
evangelostsak af23a2798b feat(wireguard): declare the per-mesh private keys as plain credentials
Declared so the config-lookup validator can resolve the path before a deploy,
and plain so the per-host credential generator leaves the value to the
cross-host mesh pass: the public half has to appear in a different host's peer
list, which no single-host generator can arrange.

On a worker the data-mesh key stays unset, because only the manager, the NFS
server and the backup host are members of that plane.
2026-09-18 10:33:48 +02:00