Commit Graph

  • 1b63e21c0f Caught up is an equality, not an ordering jschoubben 2026-09-02 00:02:44 +02:00
  • 649ce9bc3b Directories belong to the number that runs inside jschoubben 2026-09-01 23:45:17 +02:00
  • d85be55e3c The media tail: bazarr, jackett, nzbget, tautulli, ombi jschoubben 2026-09-01 23:26:29 +02:00
  • 1dce1fc5e7 The media four: plex, sonarr, radarr, qbittorrent jschoubben 2026-09-01 23:23:43 +02:00
  • 0ba52d03a3 Two more: nextcloud and home-assistant jschoubben 2026-09-01 23:09:40 +02:00
  • c0107b8572 Status says when each machine last reported, beside when it was sent jschoubben 2026-09-01 23:02:26 +02:00
  • ef7750f816 Three more: searxng, influxdb, verdaccio jschoubben 2026-09-01 22:49:18 +02:00
  • 8c4a478b09 Four more of the catalogue: registry, redis, umami, grafana jschoubben 2026-09-01 22:44:53 +02:00
  • 38d4e77cec A certificate is issued once and kept jschoubben 2026-09-01 22:26:50 +02:00
  • b70f0d626a What review found in the port machinery, fixed jschoubben 2026-09-01 21:54:05 +02:00
  • 8174f5c41e plan is the send without the sending, so it allocates jschoubben 2026-09-01 21:32:57 +02:00
  • be62f49eab What provides the artifact store cannot be delivered through it jschoubben 2026-09-01 21:18:14 +02:00
  • 4d6ec5b10c One object store, not two jschoubben 2026-09-01 21:06:17 +02:00
  • 0d975a051d Asking what the mesh would send must not change it jschoubben 2026-09-01 20:05:08 +02:00
  • 83c6a2f244 Withdraw the mount check: it refuses the builder jschoubben 2026-09-01 19:45:36 +02:00
  • 53eb000a84 A container may not mount a path the module never declared jschoubben 2026-09-01 19:36:01 +02:00
  • c67f836185 The mesh may only move a port it actually publishes jschoubben 2026-09-01 19:31:05 +02:00
  • 41f7c51032 Assign around what a machine already holds jschoubben 2026-09-01 18:32:38 +02:00
  • 1f5b70a995 The mesh assigns the port, and a module says it once jschoubben 2026-09-01 17:52:53 +02:00
  • a5d85266d0 A container does not take restart-on, and nine of them did jschoubben 2026-09-01 17:19:04 +02:00
  • f5b03e1474 Declare the directories that hold the data jschoubben 2026-09-01 16:09:23 +02:00
  • ee3cc1b6f4 Pin the example modules to images that exist jschoubben 2026-09-01 15:13:33 +02:00
  • 2835f41a64 Stop committing a 12 MB binary I added by accident today jschoubben 2026-09-01 03:21:45 +02:00
  • e49586646b A comment claimed a test that does not exist jschoubben 2026-09-01 03:15:22 +02:00
  • a4090014f3 An example may not name an image nothing builds jschoubben 2026-09-01 03:12:49 +02:00
  • e5243cd753 Ask every consumer for usable configuration, not just the one in hand jschoubben 2026-09-01 03:10:43 +02:00
  • 71f77617e3 Omit a consumer's identity where there is none jschoubben 2026-09-01 03:09:18 +02:00
  • 122680b554 A consumer can write its own connection string jschoubben 2026-09-01 03:03:07 +02:00
  • 96f90ab986 Refuse an action where it was written, not on the machine jschoubben 2026-09-01 02:55:56 +02:00
  • be2dca27ab The example modules put their credentials where the programs read them jschoubben 2026-09-01 02:52:00 +02:00
  • 0af3ea1acf A consumer is a module on a machine, not a machine jschoubben 2026-09-01 02:40:09 +02:00
  • 1314be5282 A file may hold a credential where its content says one belongs jschoubben 2026-09-01 02:28:50 +02:00
  • df62bb57e5 A requirement answered on this machine is still a requirement jschoubben 2026-09-01 02:15:26 +02:00
  • d0511ee3fe The command API, which refuses everything until it knows who is asking jschoubben 2026-09-01 01:55:56 +02:00
  • 8cf1ecf6a5 secret accept: see the flag that comes after the arguments jschoubben 2026-08-31 23:05:10 +02:00
  • 7e9c28fd9e secret accept — carry a value the mesh did not make jschoubben 2026-08-31 21:57:57 +02:00
  • f04d00b411 The proxy can obtain a public certificate, and asks staging by default jschoubben 2026-08-31 19:35:34 +02:00
  • 16faadfe52 A session is a consumer of a licence, and (node, module) already names one jschoubben 2026-08-31 18:41:19 +02:00
  • 981cd4139b Reference the record rather than link across repositories jschoubben 2026-08-31 17:52:25 +02:00
  • 950ebb9e28 The two halves of an object-store edge, as a readable pair jschoubben 2026-08-31 17:52:14 +02:00
  • ed9a30f22d A module can be given a bucket: the provisioner that makes a secret true jschoubben 2026-08-31 17:51:12 +02:00
  • 9f5d7a1a83 Name ADR 0013 in the test that defends it jschoubben 2026-08-31 17:33:34 +02:00
  • ee84b624b1 A provision names the engine, because a consumer is coupled to one jschoubben 2026-08-31 17:12:46 +02:00
  • ab1dd34d12 The resolver does not ask itself for upstreams jschoubben 2026-08-31 14:09:50 +02:00
  • a18c3b9d13 needs is now own-secrets, named for whose it is jschoubben 2026-08-31 13:47:21 +02:00
  • e3a2790acd The resolver answers on an address systemd does not hold jschoubben 2026-08-31 13:39:58 +02:00
  • 6eeb10f066 A command opens each store once, not once per machine jschoubben 2026-08-31 13:35:39 +02:00
  • 8623613704 Split main.go along the seams it already had jschoubben 2026-08-31 13:30:54 +02:00
  • 68b0d0c10a What answers a requirement is applied before what asked for it jschoubben 2026-08-31 12:54:27 +02:00
  • bff893f8af Resolver modules: one that serves, and two ways of deciding what a machine asks jschoubben 2026-08-31 12:21:58 +02:00
  • 3954157555 The mesh computes every name under a machine, for a resolver to answer jschoubben 2026-08-31 11:39:21 +02:00
  • 4d67c48342 Every container is given the mesh's names jschoubben 2026-08-31 11:13:34 +02:00
  • 092109debc A computed module says what its machine opens, so a hub can be filtered jschoubben 2026-08-31 10:07:01 +02:00
  • d1c256c2b1 The board says what is waiting too, or it disagrees with the command jschoubben 2026-08-31 06:00:04 +02:00
  • 5a28434ba8 "Behind" means not running what the mesh would send jschoubben 2026-08-31 05:17:21 +02:00
  • dfca21fa55 Keep what a machine said about itself, not just the yes jschoubben 2026-08-31 04:53:45 +02:00
  • 92133c340b A board that reads through the same interfaces and holds nothing jschoubben 2026-08-31 04:49:21 +02:00
  • 29b336bb8d Say the remedy beside the problem in status jschoubben 2026-08-31 03:22:24 +02:00
  • faf5ecd70f One machine's unanswerable requirement does not remove it from the mesh jschoubben 2026-08-31 03:06:33 +02:00
  • 005b928d36 Test the licence store, and name an unknown licence rather than a constraint jschoubben 2026-08-31 02:59:39 +02:00
  • fbae2f1f9f Build everything behind its source, in one command jschoubben 2026-08-31 02:55:10 +02:00
  • 87c6a56b81 Model access is a provision answered by a record, not a machine jschoubben 2026-08-31 02:50:38 +02:00
  • d0c0ee8dab A route is a grant, and a provider is told where its consumer is jschoubben 2026-08-31 02:43:19 +02:00
  • ebcfd37b92 Rotate a credential and move both ends together jschoubben 2026-08-31 02:38:52 +02:00
  • e2916ee3db The pin is compared in the spelling the mesh writes it jschoubben 2026-08-31 01:45:09 +02:00
  • 8b2d1bce9d Something answered on this machine is still bound jschoubben 2026-08-31 01:35:23 +02:00
  • a5b11fd6b2 A build machine is told what to check the broker against jschoubben 2026-08-31 00:55:33 +02:00
  • 1eb1b69cae What the mesh computes is applied before what the module declared jschoubben 2026-08-31 00:37:01 +02:00
  • d9bee18d44 A mesh on both address families renders both jschoubben 2026-08-31 00:34:20 +02:00
  • 58c8ab7747 A secret the mesh was given is not one the mesh can reinvent jschoubben 2026-08-31 00:32:11 +02:00
  • 48735171eb A machine's filtering is computed from what it was assigned jschoubben 2026-08-31 00:25:12 +02:00
  • 646609c1b2 The mesh certifies names inside it jschoubben 2026-08-31 00:09:13 +02:00
  • 0262873254 status --json, so a board has something to read jschoubben 2026-08-30 20:22:04 +02:00
  • 79d6ade4c8 push --behind, and a builder told where to publish jschoubben 2026-08-30 19:47:02 +02:00
  • 45c3853f4e A consumer that stopped asking is withdrawn jschoubben 2026-08-30 19:17:13 +02:00
  • 15fd70e3ce A module may mirror an image it did not write jschoubben 2026-08-30 18:28:05 +02:00
  • c37d368f65 A module may need a secret of its own, and the provisioner watches jschoubben 2026-08-30 18:22:05 +02:00
  • 9681b288aa Keep what each machine did, so status can say what is wrong jschoubben 2026-08-30 18:08:59 +02:00
  • 3195634441 A build machine gets its own credential, scoped to build work jschoubben 2026-08-30 10:28:41 +02:00
  • 0bbb5c6838 Builds have a history, and failures are rows like any other jschoubben 2026-08-30 10:18:23 +02:00
  • 78c5b653cf A secret the mesh is given, not one it made jschoubben 2026-08-30 03:47:04 +02:00
  • 421fe73dce The mesh builds: a machine takes the work, and the catalogue shows it jschoubben 2026-08-30 03:46:02 +02:00
  • 7d033ad9f6 Publish to the registry, and a command that builds a repository jschoubben 2026-08-30 03:36:04 +02:00
  • 604b04886b A builder: a repository becomes artifacts the mesh can pin jschoubben 2026-08-30 03:32:46 +02:00
  • 44ba100595 A module says what it builds, and the built manifest is a different document jschoubben 2026-08-30 03:29:17 +02:00
  • d978712d7f Split resolving from rendering a declaration jschoubben 2026-08-30 02:54:51 +02:00
  • 02d1020bce The token carries the node's name jschoubben 2026-08-30 02:36:57 +02:00
  • b9aac2b700 Check that what a node says when it joins is what this mesh reads jschoubben 2026-08-30 02:20:28 +02:00
  • c3046dcf56 A provider is told who its consumers are, and a reference provisioner jschoubben 2026-08-30 01:31:25 +02:00
  • 20f78cd5f1 Credentials the mesh delivers and cannot read jschoubben 2026-08-30 00:21:18 +02:00
  • c4782ae2fd An app is told where its database is jschoubben 2026-08-30 00:02:18 +02:00
  • d4064122d6 Where the answer to a requirement is allowed to live jschoubben 2026-08-29 23:51:50 +02:00
  • 5a3a87e8c3 A module can tell its provider what it needs jschoubben 2026-08-29 23:35:43 +02:00
  • 44d134ba25 Networking is a module, and a domain module is how you avoid choosing jschoubben 2026-08-29 23:19:32 +02:00
  • 65ade756f2 Settings: changing a module's config without editing its file jschoubben 2026-08-29 23:01:09 +02:00
  • 653e232f1c The mesh knows where a module came from, and whether it is behind jschoubben 2026-08-29 22:32:16 +02:00
  • 931a3a19a5 Taking a module off a node takes it off the machine jschoubben 2026-08-29 22:16:11 +02:00
  • 409cd16a09 The mesh decides what a node runs jschoubben 2026-08-29 22:00:06 +02:00
  • f0cff88172 The mesh knows who is out of touch jschoubben 2026-08-29 20:32:27 +02:00
  • fc1417be72 Names, from the same graph as the network jschoubben 2026-08-29 19:58:01 +02:00