Watch
0
0
Fork
You've already forked hyperhive
0
hyperhive/nix/module-eval
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas b5053d9a80 swarm-bao-pki: enabling a service mints its client leaf on the same switch
`swarm-bao-pki` was a `RemainAfterExit` oneshot. Once active, nothing
re-ran it: a switch restarts it only when its definition changes, and a
`Requires=`/`Wants=` on an active unit is satisfied without running it.

On muede-lpt2 the 10:57Z switch that added the builder line did change
the unit, so switch-to-configuration stopped it in its stop phase. A
start of `container@swarm-bao` 4 s later (before the daemon-reload at
10:57:35Z) pulled it back in through `swarm-bao-certs` with the OLD
definition, which had no builder line: 48 ms, nothing missing. The start
phase then found it active and did nothing. The 20:14Z switch that
enabled the builder left the unit unchanged, so it was never re-run, and
`container@swarm-builder` crash-looped on the absent `builder.pem`.

The unit now goes inactive after each run. Every switch starts
`multi-user.target`, which runs it again post-reload with the current
definition, and every unit that wants or requires it runs it on its own
start. Each line is idempotent on presence, so an existing leaf is never
re-signed.

The three consumers started from `machines.target` rather than
`multi-user.target` also want it, since `After=` alone does not order
against a job in another transaction: the builder's and the review
classifier's containers (nspawn `--load-credential`) and
`swarm-nats-auth-secrets` (pulled in by the queue's container).

Fixes #5284
2026-10-15 08:31:33 +02:00
..
agent-forge-bao.nix agents: swap the agent's bao leaf in with one rename 2026-10-11 10:00:43 +02:00
agent-github-bao.nix module-eval: evaluate shared fixture configs once 2026-10-13 08:14:50 +02:00
agent-icon.nix nix: split module-eval into per-subsystem checks 2026-09-20 04:25:54 +02:00
agent-matrix.nix module-eval: evaluate shared fixture configs once 2026-10-13 08:14:50 +02:00
agent-memory.nix subagent, bash: run each subagent run and bash task in its own cgroup 2026-10-13 12:25:27 +02:00
agent-otel.nix module-eval: evaluate shared fixture configs once 2026-10-13 08:14:50 +02:00
agent-plugins.nix module-eval: evaluate shared fixture configs once 2026-10-13 08:14:50 +02:00
agent-queue-bao.nix module-eval: restore agentWith in agent-queue-bao.nix 2026-10-13 14:56:25 +02:00
agent-runtime.nix agents: swap the agent's bao leaf in with one rename 2026-10-11 10:00:43 +02:00
agent-user.nix module-eval: agent-user test asserts the heal_own_dir form 2026-10-09 11:30:30 +02:00
bao-basics.nix swarm-bao-agent-pki: decide openbao's restart on the shared locale-independent compare 2026-10-13 17:00:56 +02:00
bao-controller.nix swarmctl: on a controller host, trust the swarm's root without SWARMCTL_CA_FILE 2026-10-14 12:49:16 +02:00
bao-grants.nix review classifier: run on ACP when the swarm settings choose it 2026-10-14 10:14:36 +02:00
bao-matrix-reader.nix module-eval: evaluate shared fixture configs once 2026-10-13 08:14:50 +02:00
bao-otel-collector.nix module-eval: evaluate shared fixture configs once 2026-10-13 08:14:50 +02:00
builder.nix swarm-bao-pki: enabling a service mints its client leaf on the same switch 2026-10-15 08:31:33 +02:00
core-toggle.nix swarm-bao-pki: enabling a service mints its client leaf on the same switch 2026-10-15 08:31:33 +02:00
forge-placement.nix swarm-otel: scrape nats through its published name 2026-10-15 08:03:46 +02:00
grafana.nix swarm-otel: scrape grafana through its published name 2026-10-14 23:45:04 +02:00
hive-otel.nix hive otel: keep file_storage defined when the collector authenticates upstream 2026-10-14 10:13:58 +02:00
hive-tls.nix module-eval: evaluate shared fixture configs once 2026-10-13 08:14:50 +02:00
journald-severity.nix module-eval: assert the severity table once, not once per tier 2026-09-20 14:23:56 +02:00
lib.nix authelia: a user outside a rule's group is denied instead of falling through to one_factor 2026-10-14 23:41:13 +02:00
matrix-core.nix module-eval: evaluate shared fixture configs once 2026-10-13 08:14:50 +02:00
name-guards.nix swarm: refuse swarm.hives keys that are not valid hive identifiers 2026-10-12 21:45:50 +02:00
nats-authelia.nix swarm-bao-pki: enabling a service mints its client leaf on the same switch 2026-10-15 08:31:33 +02:00
nats-tls.nix swarm-otel: scrape nats through its published name 2026-10-15 08:03:46 +02:00
secret-publisher.nix glue: the secret publisher's authelia-dependent settings move out of the publisher module 2026-10-14 01:52:53 +02:00
shared.nix module-eval: three duplicate nixosSystem fixtures come from shared.nix 2026-10-15 08:29:58 +02:00
snapshot-store.nix swarm snapshot store: the receiver socket binds the mesh address even when wg-hive comes up after sockets.target 2026-10-15 08:27:54 +02:00
swarm-otel-core.nix module-eval: evaluate shared fixture configs once 2026-10-13 08:14:50 +02:00
swarm-otel-identity.nix swarm-otel: scrape nats through its published name 2026-10-15 08:03:46 +02:00
swarm-services-switch.nix module-eval: three duplicate nixosSystem fixtures come from shared.nix 2026-10-15 08:29:58 +02:00