diff --git a/nix/host-modules/deploy.nix b/nix/host-modules/deploy.nix index d7689dfd..16b4ce8f 100644 --- a/nix/host-modules/deploy.nix +++ b/nix/host-modules/deploy.nix @@ -158,9 +158,8 @@ in description = '' Run the swarm's metrics store on this host. - Derives from - {option}`services.hyperhive.deploy.allSwarmServices` together - with {option}`services.hyperhive.deploy.grafana.enable`: a store + Paired with + {option}`services.hyperhive.deploy.grafana.enable`: a store with no UI is unreadable and a UI with no store is empty, so there is no sensible deployment that takes one and not the other from that switch. Set either directly to run exactly one. @@ -173,10 +172,8 @@ in description = '' Run the swarm's log store on this host. - Derives from - {option}`services.hyperhive.deploy.allSwarmServices` for the - same reason as the metrics pair above: a hive that is not the - service host is a *client* of this store, not a second one. + A hive that is not the service host is a *client* of this store, + not a second one. ''; }; @@ -186,14 +183,10 @@ in example = true; description = '' Run the swarm's secret store in a `swarm-bao` container on this - host. A swarm has one store and it has to exist somewhere, so - this is asserted from - {option}`services.hyperhive.deploy.allSwarmServices` - alongside the other once-per-swarm services. + host. A swarm has one store and it has to exist somewhere. - That assertion is a `mkDefault`, which is what keeps *where* the - store runs a separate question from *that* it runs: set this - directly to put the store on a host of its own, and clients + *Where* it runs is a separate question from *that* it runs: set + this directly to put the store on a host of its own, and clients still reach it by name at {option}`services.hyperhive.swarm.bao.domain` rather than at a local address. @@ -212,9 +205,7 @@ in example = true; description = '' Run the swarm's authelia in a `swarm-authelia` container on this - host. {option}`services.hyperhive.deploy.allSwarmServices` - turns this on — a swarm has one SSO provider, and that says it - lives here. + host. A swarm has one SSO provider, and this says it lives here. With it off, this hive is a *client*: {option}`services.hyperhive.swarm.authelia.url` still points at @@ -230,10 +221,8 @@ in description = '' Run the **swarm's** telemetry collector on this host. - Derives from - {option}`services.hyperhive.deploy.allSwarmServices` with the - metrics pair it feeds: a swarm has one of these, and it belongs - wherever the shared services live rather than on every hive. + A swarm has one of these, and it belongs wherever the shared + services live rather than on every hive. Named `swarm-otel` rather than `otel` because there are two collectors and the tier is the whole distinction: @@ -252,10 +241,8 @@ in Run the swarm's matrix homeserver — matrix-tuwunel, in a `hive-matrix` container — on this host. - Derives from - {option}`services.hyperhive.deploy.allSwarmServices` with - the other once-per-swarm services. Set it here directly to put - the homeserver somewhere other than the host holding the rest. + Set it directly to put the homeserver somewhere other than the + host holding the rest of the swarm's services. Client-side settings stay in {option}`services.hyperhive.swarm.matrix.*`, which every hive @@ -299,10 +286,8 @@ in Serve the swarm UI from this host. Derived from - {option}`services.hyperhive.deploy.swarm-controller.enable` rather - than from - {option}`services.hyperhive.deploy.allSwarmServices`: the UI - is a view onto the controller's state and reaches it over that + {option}`services.hyperhive.deploy.swarm-controller.enable`: the + UI is a view onto the controller's state and reaches it over that daemon's unix socket, so the host that runs the controller is the host that can serve the UI. A hive that merely *uses* a swarm has nothing to serve here.