Watch
0
0
Fork
You've already forked hyperhive
0
hyperhive/nix/host-modules
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas b807189692 swarm-logs-auth: run as a static user so nginx reaches its socket
With DynamicUser=true and RuntimeDirectoryPreserve=yes, systemd creates
the unit's runtime directory under /run/private/ (0700 root:root) and
symlinks /run/swarm-logs-auth to it (systemd.exec(5),
RuntimeDirectoryPreserve=). nginx runs as the unprivileged nginx user, so
its connect() to /run/swarm-logs-auth/auth.sock failed with EACCES, the
auth subrequest ended in a 502, and auth_request answered every agent
bearer on /select/logsql/ with a 500.

The unit now runs as a static swarm-logs-auth system user and group, the
shape swarm-controller already uses for its 0751 + Preserve socket dir.
RestrictSUIDSGID and RemoveIPC, which DynamicUser implied and the unit
did not set itself, are set explicitly.

module-eval-core-toggle gains a case that fails when any unit creating
the runtime directory of a unix: upstream of nginx combines DynamicUser
with RuntimeDirectoryPreserve. docs/process/gotchas.md records the trap.

Fixes #5235
2026-10-14 17:55:28 +02:00
..
hive-c0re swarm-logs: authenticate as the agent with its own queue secret 2026-10-13 08:38:05 +02:00
hive-forge swarm-authelia: match the metrics rules with or without a query string 2026-10-14 10:15:41 +02:00
hive-gateway swarm CA: describe the store's pki root as the only anchor in docs and comments 2026-10-05 21:17:10 +02:00
lib swarm-bao-agent-pki: decide openbao's restart on the shared locale-independent compare 2026-10-13 17:00:56 +02:00
swarm-grafana/dashboards swarm-grafana: drop stale windows from the subscription usage line, match sibling panel interval 2026-10-07 23:54:53 +02:00
bao-bootstrap-policy.hcl bao: disable the unused approle auth method, declaratively 2026-09-28 22:58:36 +02:00
default.nix glue: the controller's authelia and otel environment moves out of the controller module 2026-10-14 10:15:29 +02:00
deploy.nix swarm-builder: scope the forge token to the forge, one build at a time, opt-in 2026-10-14 03:30:46 +02:00
glue-bao-readers-policy-order.nix grafana: mint the admin password into the store and apply it on every start 2026-10-12 15:16:53 +02:00
glue-bao-readers-store-order.nix glue: consumers' start-after-bao ordering moves into one glue module 2026-10-13 22:05:16 +02:00
glue-bao-tls.nix swarm-builder: build each agent config PR head and post a commit status 2026-10-14 03:30:46 +02:00
glue-bao-ui-oidc-client.nix bao: OIDC login to the browser UI via authelia, as a metadata-only viewer 2026-09-28 19:56:38 +02:00
glue-builder-oidc-client.nix swarm-builder: build each agent config PR head and post a commit status 2026-10-14 03:30:46 +02:00
glue-controller-bao-identity.nix nix: gate hive-c0re on deploy.hive-controller.enable, drop hyperhive.enable 2026-09-26 01:19:49 +02:00
glue-controller-env.nix glue: the controller's authelia and otel environment moves out of the controller module 2026-10-14 10:15:29 +02:00
glue-controller-oidc-client.nix glue: the controller's authelia and otel environment moves out of the controller module 2026-10-14 10:15:29 +02:00
glue-forge-controller.nix glue: forge's controller-dependent settings move out of the forge module 2026-10-13 22:14:28 +02:00
glue-forge-oidc-client.nix nix: gate hive-c0re on deploy.hive-controller.enable, drop hyperhive.enable 2026-09-26 01:19:49 +02:00
glue-grafana-oidc-client.nix nix: gate hive-c0re on deploy.hive-controller.enable, drop hyperhive.enable 2026-09-26 01:19:49 +02:00
glue-hive-otel-authelia.nix glue: hive-otel's ordering after authelia moves out of the otel module 2026-10-13 22:04:52 +02:00
glue-hive-tls-bao-identity.nix hive-tls: the gateway leaf uses the services-issuer identity, not a hive's 2026-10-06 14:54:07 +02:00
glue-logs-auth-bao-identity.nix swarm-logs-auth: check agent tokens on the log store's query route 2026-10-13 08:38:05 +02:00
glue-matrix-ctl-bao-identity.nix swarm-nats, matrix: the queue's and matrix-ctl's store identity paths are their own, not the hive's 2026-10-06 12:04:48 +02:00
glue-matrix-oidc-client.nix swarm: OIDC clients registered wherever authelia runs; nats + matrix secrets from bao 2026-10-05 09:58:02 +02:00
glue-nats-auth-bao-identity.nix swarm-nats: the auth responder's store identity path is its own, not the hive's 2026-10-06 10:04:30 +02:00
glue-nats-bao-identity.nix swarm-nats, matrix: the queue's and matrix-ctl's store identity paths are their own, not the hive's 2026-10-06 12:04:48 +02:00
glue-nats-oidc-client.nix swarm: OIDC clients registered wherever authelia runs; nats + matrix secrets from bao 2026-10-05 09:58:02 +02:00
glue-nats-wireguard.nix glue: nats firewall on the wireguard interface moves out of the nats module 2026-10-14 10:15:19 +02:00
glue-otel-scrape-targets.nix swarm-otel: authelia is no longer declared as both a loopback and a published scrape target 2026-10-14 10:28:48 +02:00
glue-queue-agent-credential.nix swarm-bao-pki: sign every other hive's three store leaves 2026-10-12 21:41:28 +02:00
glue-review-classifier-oidc-client.nix nix: run the review classifier in a container of its own when a host enables it 2026-10-12 13:11:21 +02:00
glue-secret-publisher-authelia.nix glue: the secret publisher's authelia-dependent settings move out of the publisher module 2026-10-14 01:52:53 +02:00
glue-secret-publisher-bao-identity.nix nix: gate hive-c0re on deploy.hive-controller.enable, drop hyperhive.enable 2026-09-26 01:19:49 +02:00
glue-swarm-bao-otel-oidc-client.nix ops: update option pointers after grafana/bao split 2026-10-01 09:53:04 +02:00
glue-swarm-otel-oidc-client.nix ops: update option pointers after otel split 2026-10-01 13:00:40 +02:00
hive-matrix-service.nix swarm-controller: revoke matrix admin from former operators 2026-10-05 12:39:02 +02:00
hive-matrix.nix glue: consumers' start-after-bao ordering moves into one glue module 2026-10-13 22:05:16 +02:00
hive-network.nix nix: run swarm-ui wherever swarm-controller runs 2026-10-13 20:05:19 +02:00
hive-priv.nix swarm-ci-runner: run the forge CI runner as a swarm service 2026-10-05 13:55:37 +02:00
hive-tls.nix hive-tls: the root fetch presents the hive identity, as on main 2026-10-06 14:54:07 +02:00
host-ca-removed.nix hive CA: catch a deleted CA file however its path is spelled 2026-10-05 21:17:10 +02:00
hyperhive.nix nix: finish the current-behaviour comment sweep in touched files 2026-10-05 09:58:57 +02:00
local-defaults.nix swarm-nats: take the callout issuer and user keys from the store 2026-10-06 14:53:33 +02:00
nats-callout-removed.nix nats-callout-removed: remove the container's OIDC secret copy here, ungated 2026-10-06 15:25:29 +02:00
otel.nix hive otel: keep file_storage defined when the collector authenticates upstream 2026-10-14 10:13:58 +02:00
stylix-theme.nix swarm-ui: apply the operator's stylix theme, same as the dashboard already does 2026-08-24 14:28:25 +02:00
swarm-authelia-service.nix swarm-otel: scrape authelia through its published name 2026-10-14 10:15:41 +02:00
swarm-authelia.nix swarm-authelia: admit only the collector anywhere on the metrics store's name 2026-10-14 13:27:08 +02:00
swarm-bao-service.nix nix: split swarm-bao into service and deploy-mode files 2026-10-01 09:37:36 +02:00
swarm-bao.nix glue: the controller's authelia and otel environment moves out of the controller module 2026-10-14 10:15:29 +02:00
swarm-builder.nix swarm-builder: scope the forge token to the forge, one build at a time, opt-in 2026-10-14 03:30:46 +02:00
swarm-ci-runner.nix glue: consumers' start-after-bao ordering moves into one glue module 2026-10-13 22:05:16 +02:00
swarm-controller.nix swarmctl: on a controller host, trust the swarm's root without SWARMCTL_CA_FILE 2026-10-14 12:49:16 +02:00
swarm-grafana-service.nix grafana: the published vhost refuses /metrics 2026-10-13 21:42:29 +02:00
swarm-grafana.nix glue: otel scrape targets for authelia, grafana and nats move out of the services 2026-10-14 01:40:40 +02:00
swarm-nats-service.nix nix: finish the "moved to" comment sweep 2026-10-05 09:59:02 +02:00
swarm-nats.nix glue: nats firewall on the wireguard interface moves out of the nats module 2026-10-14 10:15:19 +02:00
swarm-otel-service.nix swarm-otel: scrape VictoriaLogs through its published name 2026-10-14 14:45:31 +02:00
swarm-otel.nix glue: the controller's authelia and otel environment moves out of the controller module 2026-10-14 10:15:29 +02:00
swarm-peers-removed.nix swarm CA: retire the host-held root CA, the store holds the only anchor 2026-10-05 21:17:10 +02:00
swarm-required-services.nix swarm-builder: scope the forge token to the forge, one build at a time, opt-in 2026-10-14 03:30:46 +02:00
swarm-review-classifier.nix review classifier: run on ACP when the swarm settings choose it 2026-10-14 10:14:36 +02:00
swarm-secret-publisher.nix swarm-builder: build each agent config PR head and post a commit status 2026-10-14 03:30:46 +02:00
swarm-snapshot-store.nix deploy: move the wireguard mesh out of the namespace hives read 2026-09-07 14:24:52 +02:00
swarm-ui.nix nix: run swarm-ui wherever swarm-controller runs 2026-10-13 20:05:19 +02:00
swarm-victorialogs-service.nix nix: split swarm-victorialogs into service and deploy-mode files 2026-10-01 10:03:55 +02:00
swarm-victorialogs.nix swarm-logs-auth: run as a static user so nginx reaches its socket 2026-10-14 17:55:28 +02:00
swarm-victoriametrics-service.nix nix: follow-ups from the service/deploy split 2026-10-05 19:12:46 +02:00
swarm-victoriametrics.nix swarm-authelia: admit only the collector anywhere on the metrics store's name 2026-10-14 13:27:08 +02:00
swarm-wireguard.nix swarm options: no swarm.* value depends on a deploy option or this host's hive 2026-10-04 18:13:47 +02:00
swarm.nix swarm-builder: build each agent config PR head and post a commit status 2026-10-14 03:30:46 +02:00