swarm: publish an authenticated gateway vhost for VictoriaLogs
Adds services.hyperhive.swarm.victorialogs.domain and a gateway vhost gated by the same auth_request check against authelia that swarm-uis own vhost uses (same swarmAuthRequest shape, copied not shared - see the file top comment for why). The stores own listener stays loopback-only and unauthenticated exactly as before; the collector still writes to it directly, never through this vhost, so this only adds a new authenticated read path. Registers the new domain in swarm.nixs serviceDomains so the swarm-services sub-CA issues for it (a missed entry silently falls back to the hive leaf, which cannot cover a name under a different apex - swarm.nixs own comment on that list documents the incident this caused before). Verified with a throwaway module-eval (same technique as the flake module-eval check): vhost only exists when victorialogs.enable is set, forceSSL/no addSSL, both locations present, domain correctly registered/absent from serviceDomains, links entry present.
This commit is contained in:
parent
2e43205fc3
commit
ed95e692e1
2 changed files with 104 additions and 7 deletions
|
|
@ -59,7 +59,14 @@ let
|
|||
# failed every POST and dropped the samples.
|
||||
++ lib.optional swarmCfg.grafana.enable swarmCfg.grafana.domain
|
||||
++ lib.optional swarmCfg.victoriametrics.enable swarmCfg.victoriametrics.domain
|
||||
++ lib.optional swarmCfg.otel.enable swarmCfg.otel.domain;
|
||||
++ lib.optional swarmCfg.otel.enable swarmCfg.otel.domain
|
||||
# VictoriaLogs' vhost is new (was previously unpublished entirely — see
|
||||
# swarm-victorialogs.nix's file-top comment) and needs the same
|
||||
# membership every gateway-published swarm service needs: absent from
|
||||
# this list, `gateway.lib.tlsFor` falls back to the hive leaf, which
|
||||
# cannot cover a name under a different apex — see the ⚠️ above this
|
||||
# list for what that looked like the last time a name was missed here.
|
||||
++ lib.optional swarmCfg.victorialogs.enable swarmCfg.victorialogs.domain;
|
||||
|
||||
# Hives whose entry still carries the removed `certFingerprint`. Scanned
|
||||
# here, at top level, because that is the only place an assertion about a
|
||||
|
|
|
|||
Loading…
Reference in a new issue