Watch
0
0
Fork
You've already forked hyperhive
0
Commit graph hyperhive/nix
Author SHA1 Message Date
atlas
2fc63d844b name the mint, not the publisher, as the writer of the client secrets
Finishes the sweep of prose that said the publisher unit writes or carries the OIDC client secrets: rust docs, nix comments and option descriptions, test names and docs.
2026-10-30 16:57:58 +01:00
atlas
05665c05f3 derive a missing client digest from the secret that exists
A client with a secret in the store or in a leftover file but no digest gets the digest of that secret instead of stopping the unit. The password reaches authelia's prompt through a pty, not argv. A lost mint race takes the winner's secret. Also name the mint, not the publisher, in the remaining rust docs.
2026-10-30 16:57:58 +01:00
atlas
d30cb7d122 keep authelia's oidc client secrets in the store, not on disk
The mint creates each client's secret in the swarm secret store and writes only the digest to disk. It mints only when the store answers and holds none. A new unit moves the plaintext files an earlier release left into the store and removes each once the store holds the same value. The bridge reads its secret from the store into /run before each start. The secret publisher unit and its path unit are gone.
2026-10-30 16:57:58 +01:00
iris
e334e677e0 egress dashboard: match squid's result codes by prefix
"TCP_" alone is a word filter for the token TCP_, which no result code is, so
the overview and refused tabs read zero. "TCP_"* matches TCP_TUNNEL and the
rest. The module-eval case now fails on the bare form.
2026-10-30 16:15:19 +01:00
iris
6b0c06800b egress dashboard: tabs like the agents board, with totals on the first
The board was one page of would-deny panels. It now has three tabs: overview
(requests, agents active, refused, credential challenges, data transferred,
status over time, busiest agents and destinations), refused (the hosts each
agent was refused) and would-deny (the old panels). The module-eval check pins
the tab layout and both squid log layouts the queries parse.
2026-10-30 16:10:02 +01:00
atlas
7eb9db47d6 declare the root-check link on hosts without a controller too 2026-10-30 11:18:53 +01:00
atlas
29c57e058a run the platform containers' root check through a build-independent path 2026-10-30 11:13:16 +01:00
atlas
700279026f add the egress log dashboard 2026-10-30 08:53:03 +01:00
atlas
fd2861c097 reset the failed container unit before stopping it in the link-refusal vm subtest 2026-10-30 08:52:50 +01:00
atlas
e46ad07226 add a per-agent egress log mode 2026-10-30 08:52:22 +01:00
atlas
221c3f35a1 remove the hive-c0re forge-credential chain nothing reads any more
With no nix build on the hive, the boot publish of the forge token for nix has no reader. Removes the ForgeSweep node, the token file, the git credential helper and hive-c0re's forge gitconfig sections.
2026-10-29 22:55:31 +01:00
atlas
4590b04cac remove the hive's local build of agent closures
A rebuild or create downloads the closure the swarm built and applies it; with none to deploy it fails and changes nothing. hive-priv takes a store path instead of an internal/meta commit and builds nothing.
2026-10-29 22:17:07 +01:00
atlas
70538fb209 move c0re.hyperhiveFlake to deploy.hyperhiveFlake 2026-10-29 14:31:20 +01:00
atlas
e8190a4972 pin the container units in the hive collector's journal allow-list 2026-10-29 13:03:54 +01:00
atlas
c9096484d7 fold the container units into the one journalUnits definition 2026-10-29 12:52:54 +01:00
atlas
e316e683c3 ship container unit journals through the hive collector 2026-10-29 12:49:03 +01:00
atlas
fa5293e90a read the squid options at their new path in the otel fixture; pin the env on a host with a store identity 2026-10-29 09:53:20 +01:00
atlas
da16487800 move the squid host options to deploy.hive-controller.squid 2026-10-29 09:53:20 +01:00
atlas
c9b5705ad8 share one hive-priv request helper across the vm tests 2026-10-29 08:51:31 +01:00
atlas
525de62b06 move the small per-service host options to deploy.<service> 2026-10-29 08:44:11 +01:00
atlas
51b0a02e95 wait for the wg-hive peers before pinging in the vm test 2026-10-29 08:27:38 +01:00
atlas
ce14c9b001 wait for hive-priv's reply to a daemon-reload in the link-refusal subtest 2026-10-29 08:27:29 +01:00
atlas
7e2f4ce7c8 always include a hive's own allowedDomains in the rendered swarm-wide list 2026-10-29 08:25:22 +01:00
atlas
c5a876b845 derive an agent's backend hosts into the egress allow list at the controller 2026-10-29 08:25:22 +01:00
atlas
4f32948a97 warn when the in-swarm cache runs under another domain 2026-10-29 08:24:44 +01:00
atlas
74f463c40e move the c0re host options to deploy.hive-controller 2026-10-29 01:08:41 +01:00
atlas
525cbe0355 count readers, not writers, of the pull token in the cache's roster pin 2026-10-29 00:09:12 +01:00
atlas
f22f4ee6ac let the operator's oidc login write the cache's tokens and facts 2026-10-29 00:09:12 +01:00
atlas
e0d2350902 ignore a failed warn-only root check: prefix its ExecStartPre with a dash 2026-10-28 23:52:37 +01:00
atlas
24afc89ab3 run the root check warn-only on hyperhive's own containers, per unit, not on the container@ template 2026-10-28 23:50:58 +01:00
atlas
c191975aab check every container's root before its start, through the container@ template 2026-10-28 23:50:58 +01:00
atlas
1c3118e9cd add two-vm wg-hive mesh test to vmTests 2026-10-28 23:44:58 +01:00
atlas
ad06ce04a8 pin the security headers in the swarm api 401 location property 2026-10-28 23:37:22 +01:00
atlas
ec14977949 build the single-host fixture's nginx config in a check so gixy runs in ci 2026-10-28 23:37:22 +01:00
atlas
46693b3c25 repeat the security headers in the swarm api 401 location 2026-10-28 23:37:22 +01:00
atlas
9ed7ebab91 fetch vale styles in nix, pinned, and drop vale sync 2026-10-28 23:08:48 +01:00
damocles
6dbb18b6d4 drop the hive-side matrix code: sweep, hivectl matrix and the apiUrl option 2026-10-28 23:04:55 +01:00
atlas
a00bcb8c05 merge the self-scrape into each collector's settings instead of defining them twice 2026-10-28 23:02:18 +01:00
atlas
73c966a7eb container collectors scrape their own telemetry and push it up their hop 2026-10-28 23:02:18 +01:00
atlas
2095bb2d0f compare the seed file in the unit environment as a path string 2026-10-28 23:01:43 +01:00
atlas
c9abc2a42b make squid's allowed domains editable at runtime in the swarm ui 2026-10-28 23:01:43 +01:00
atlas
86e80250bb remove the partial salvage dir when a salvage fails
- a failure between creating the dir and the rename removes that dir only
- give the ephemeral-rootfs vm test a 4 GiB disk so the space check passes
2026-10-28 23:01:04 +01:00
atlas
836b15a46e harden the ephemeral-root salvage: clone, check space, lock
- clone each file with FICLONE, copy the data only where that fails
- skip the salvage when the copy would leave too little free space
- hold a per-container flock and one copy at a time across containers
- run WriteNspawnFlags on the blocking pool
2026-10-28 23:01:04 +01:00
atlas
bbc2a83771 print the vm test's priv response and journal only on failure 2026-10-28 22:04:09 +01:00
atlas
2b4fd52b0a make the vm test's priv request wait for the salvage reply 2026-10-28 22:04:09 +01:00
atlas
b4ce4e0d90 put hello and tree in the agent-ephemeral-rootfs vm closure 2026-10-28 22:04:09 +01:00
atlas
6708ef804f root the build the pre-start check names 2026-10-28 21:59:43 +01:00
atlas
a44a7256a7 check the container root before each start 2026-10-28 21:59:43 +01:00
damocles
ae9c3444bc test the invite room check and the no-homeserver sweep, drop the last space wording 2026-10-28 21:07:32 +01:00
damocles
fd01848d4d also stop provisioning the hive space and make hivectl matrix invite take a room 2026-10-28 20:57:41 +01:00