Commit Graph

  • 0d2c2dd989 minio: pin the manifest these machines can actually run jschoubben 2026-09-11 02:51:34 +02:00
  • 9ff320ecca Pin the operator's own images by digest, as every other image already is jschoubben 2026-09-11 01:06:14 +02:00
  • 4a1c5ac817 The artifact store requires nothing, because at genesis there is nothing jschoubben 2026-09-11 00:06:23 +02:00
  • 71f8012c5b The control plane as an ordinary module jschoubben 2026-09-10 23:43:07 +02:00
  • 16b4dc9ab9 step-ca: certify the machine the mesh reaches it at jschoubben 2026-09-10 21:12:48 +02:00
  • d9fbc72565 step-ca: give the CA's own secret material to the uid the CA runs as jschoubben 2026-09-10 20:57:58 +02:00
  • 43ca9c9c73 Give every module that would overflow its login a short slug jschoubben 2026-09-10 20:57:45 +02:00
  • 08be6683b6 route labels: nextcloud is 'drive' (real hostname), novox.be is the apex '@' jschoubben 2026-09-10 00:27:25 +02:00
  • f0665ba956 ADR 0056: selectable ACME issuer, step-ca init from operator root, route labels jschoubben 2026-09-10 00:21:42 +02:00
  • ff01adaa45 Add internal ACME CA (step-ca) as a generic acme-ca provision; wire route-proxy to consume it jschoubben 2026-09-09 23:07:54 +02:00
  • d018f1e16e Route names mirror real production hostnames from live Traefik jschoubben 2026-09-09 14:04:17 +02:00
  • e26ca38eaa novox conversions: give the web apps public names through route-proxy jschoubben 2026-09-09 12:51:15 +02:00
  • 431310fb03 novox conversions: short slugs for the login-length cap + real roundcube digest jschoubben 2026-09-09 02:35:47 +02:00
  • b3309a0ce9 mailu: full multi-container stack from the live novox deployment jschoubben 2026-09-09 01:04:55 +02:00
  • 8f99b5bd42 Add amqp-email-forwarder daemon module jschoubben 2026-09-09 00:41:06 +02:00
  • c423e21a8e Add novox.be; replace photos immich stub with the real app jschoubben 2026-09-09 00:36:48 +02:00
  • 1fc10be11b Convert only-office, n8n, de-spiegel to nox modules jschoubben 2026-09-09 00:30:06 +02:00
  • 6a84e97e53 Merge pull request 'module fixes from the whole-mesh dry-run: fail2ban capability + tool-runtime credential wiring' (#20) from feat/module-cred-fixes into main jschoubben 2026-09-08 18:45:24 +02:00
  • 5973d41966 umami: read the admin password from its mounted secret file jschoubben 2026-09-08 18:43:48 +02:00
  • d289e5a928 modules: wire tool-runtime app credentials as own-secrets jschoubben 2026-09-08 18:40:23 +02:00
  • 75fb16bbfb fail2ban: require the firewall capability, not the non-existent intrusion-prevention jschoubben 2026-09-08 18:27:34 +02:00
  • e0456746c3 Merge pull request 'local model: an ollama provider + a local-model consumer (ADR 0055)' (#19) from feat/local-model into main jschoubben 2026-09-07 05:26:02 +02:00
  • 29fe7c5bd0 local model: an ollama provider + a local-model consumer (ADR 0055) jschoubben 2026-09-07 05:25:21 +02:00
  • b33f9b14c7 Merge pull request 'openai-consumer: the static-key model-access consumer (ADR 0050)' (#18) from feat/openai-access into main jschoubben 2026-09-07 04:25:56 +02:00
  • c454c6a54c openai-consumer: the static-key model-access consumer (ADR 0050) jschoubben 2026-09-07 04:25:26 +02:00
  • 4cc1b976f5 Merge pull request 'model-usage: the vendor-neutral usage store (ADR 0054)' (#17) from feat/usage-store into main jschoubben 2026-09-07 04:08:21 +02:00
  • e8c3ea8979 model-usage: the vendor-neutral usage store (ADR 0054) jschoubben 2026-09-07 04:07:26 +02:00
  • bfbdf90496 Merge pull request 'anthropic model-access: manager + consumer modules' (#16) from feat/anthropic-module into main jschoubben 2026-09-07 02:48:51 +02:00
  • 19666ff054 anthropic-manager: seal over audited tweetnacl-sealedbox-js, not a hand-transcribed NaCl jschoubben 2026-09-07 02:17:37 +02:00
  • 4c98bee043 anthropic-manager: seal the refresh token to the node key, do no crypto to open jschoubben 2026-09-07 01:55:19 +02:00
  • c206e2e11e anthropic model-access modules: manager (refreshable-grant) and consumer jschoubben 2026-09-07 01:00:12 +02:00
  • cd46d53464 Merge pull request 'lavinmq: a user-facing AMQP provider (vhost-per-login)' (#15) from feat/convert-lavinmq into main jschoubben 2026-09-06 23:21:27 +02:00
  • 97707480d6 Add lavinmq amqp provider and amqp-ping consumer jschoubben 2026-09-06 15:50:19 +02:00
  • 090a839d42 Merge pull request 'route-proxy: the native ingress module (drop traefik)' (#14) from feat/route-proxy-module into main jschoubben 2026-09-06 15:17:21 +02:00
  • 89254ef2c8 hello-web: add slug so its identity fits the 20-char backend bound (ADR 0049) jschoubben 2026-09-06 15:16:56 +02:00
  • 36640f68e6 Add route-proxy provider and hello-web consumer modules jschoubben 2026-09-06 15:07:16 +02:00
  • 9dbbfbb5b4 Merge pull request 'fix: postgres consumers connect to the mesh-named db (the login), not a hardcoded name' (#13) from fix/consumer-db-name into main jschoubben 2026-09-06 13:47:34 +02:00
  • d301e05794 fix: postgres consumers connect to the db the mesh named (the login), not a hardcoded app name jschoubben 2026-09-06 13:47:16 +02:00
  • dc12df18b4 Merge pull request 'fix: DB/cache/store providers must serve their port (migration blocker)' (#12) from fix/db-provider-serves-port into main jschoubben 2026-09-06 03:31:50 +02:00
  • 1f0c3ac69e fix: db/cache/store providers must serve their port; drop baserow's empty redis contribution jschoubben 2026-09-06 02:38:22 +02:00
  • dba4554002 Merge pull request 'Convert confluence + jira on the tools-only template' (#11) from feat/convert-atlassian into main jschoubben 2026-09-06 01:54:51 +02:00
  • db8b60f4e4 Convert confluence and jira into nox catalog modules jschoubben 2026-09-06 01:49:22 +02:00
  • 2c3f241010 Merge pull request 'Convert gitlab — the tools-only external-SaaS exemplar (23 tools, lab-proven)' (#10) from feat/convert-gitlab into main jschoubben 2026-09-06 01:40:31 +02:00
  • 7eb156a82a Convert gitlab into a tools-only mesh catalog module jschoubben 2026-09-06 01:33:43 +02:00
  • 09b140fe86 Merge pull request 'Convert baserow, letta, invoicing (DB/S3 consumers)' (#9) from feat/land-db-consumers into main jschoubben 2026-09-06 01:14:30 +02:00
  • 8b82e47889 invoicing: point app/api at the real registry host jschoubben 2026-09-06 01:14:08 +02:00
  • 515b1e79c7 Convert baserow, letta, invoicing to mesh catalog DB consumers jschoubben 2026-09-05 23:27:04 +02:00
  • 3b5f214f3d Merge pull request 'mosquitto: run-once dynsec bootstrap + fix the exit-0-on-failure provisioner' (#8) from feat/mosquitto-bootstrap into main jschoubben 2026-09-06 01:06:08 +02:00
  • e58cbc1c46 mosquitto: don't read a rejected dynsec command as success jschoubben 2026-09-06 00:57:45 +02:00
  • ec1e7189a3 mosquitto: seed dynsec with a run-once bootstrap before the broker jschoubben 2026-09-06 00:33:28 +02:00
  • eb5cf65be3 Merge pull request 'Servarr events entrypoints don't crash the runtime when unconfigured' (#7) from fix/arr-events-guard into main jschoubben 2026-09-05 23:14:43 +02:00
  • 419dd68145 Servarr events: don't crash the runtime when unconfigured jschoubben 2026-09-05 23:13:56 +02:00
  • 50eb1e6f02 Merge pull request 'Media modules access the shared library, they do not own it (ADR 0051)' (#6) from feat/media-access-not-ownership into main jschoubben 2026-09-05 22:48:16 +02:00
  • 69c8a5edf8 media stack: the shared library is accessed, not owned jschoubben 2026-09-05 22:14:33 +02:00
  • f45cce1679 Merge pull request 'Resync hq ADR references (0044-0054 -> 0039-0049)' (#5) from feat/adr-ref-resync into main jschoubben 2026-09-05 12:49:51 +02:00
  • 6e8c18afff Resync hq ADR references 0044-0054 -> 0039-0049 after the hq record reconciliation jschoubben 2026-09-05 12:49:16 +02:00
  • afc1ae1ecf Merge pull request 'Convert four more hal modules: bookshelf, unifi, fail2ban, marrytts' (#4) from feat/convert-apps-batch-2 into main jschoubben 2026-09-05 12:34:53 +02:00
  • 229c6a83d1 Convert four more hal modules: bookshelf, unifi, fail2ban, marrytts jschoubben 2026-09-05 12:04:14 +02:00
  • 8aa09c013c Merge pull request 'Convert four hal modules: lidarr, mongodb, mssql, mosquitto' (#3) from feat/convert-remaining-services into main jschoubben 2026-09-05 04:17:47 +02:00
  • c82b3ff706 Convert four hal modules: lidarr, mongodb, mssql, mosquitto jschoubben 2026-09-05 04:17:07 +02:00
  • bca68c2109 Merge pull request 'audit-logger: the assigned-module manifest (ADR 0048)' (#2) from events/audit-logger-assigned into main jschoubben 2026-09-05 03:06:59 +02:00
  • 08bdd0e456 Providers: broker-bound runtime container replaces the old provisioner (ADR 0052/0053) jschoubben 2026-09-05 00:52:09 +02:00
  • 3b03fcd8f7 Providers create the credential the mesh minted, sealing nothing (ADR 0053) jschoubben 2026-09-05 00:27:37 +02:00
  • 550393b847 Runtime config: dedicated mergeable file + restart-on so settings take effect (issue 009) jschoubben 2026-09-04 23:40:07 +02:00
  • 9e156a5b9e Roll out the tool runtime to the remaining tools+events modules (ADR 0052/0051) jschoubben 2026-09-04 23:08:40 +02:00
  • 7b55e834e9 sonarr, radarr: tool runtime container + self-detect API key from config.xml (ADR 0052) jschoubben 2026-09-04 22:54:53 +02:00
  • 6615b5e3b3 plex, redis: module runtime containers + declare self-consumed events (ADR 0052/0046) jschoubben 2026-09-04 22:29:41 +02:00
  • 67d8d0dcbd catalogue: one mesh-state namespace — /var/lib/mesh/<module>/ (consistency) jschoubben 2026-09-04 21:28:55 +02:00
  • 5fd78a77ad minio: provisioner emits best-effort, so a missing broker can't fail provisioning jschoubben 2026-09-04 21:25:42 +02:00
  • 121b7f196b cloudflare-dns: config from settings, not static manifest env (ADR 0051) jschoubben 2026-09-04 21:07:51 +02:00
  • d2d20a76b6 cloudflare-dns: a public-dns provider (ADR 0049) jschoubben 2026-09-04 20:55:36 +02:00
  • 0e102dd350 firewall: the module that applies the mesh-computed packet filter (ADR 0050) jschoubben 2026-09-04 20:52:26 +02:00
  • d59649de0a dnsmasq: a resolver tool and event (ADR 0044/0046) jschoubben 2026-09-04 10:24:03 +02:00
  • 8f8e0153b1 searxng, icecast, photos: full nox modules (ADR 0044/0046) jschoubben 2026-09-04 02:46:24 +02:00
  • 81dc74734b registry, verdaccio, portainer: full nox modules (ADR 0044/0046) jschoubben 2026-09-04 02:45:42 +02:00
  • aca237b2e0 home-assistant, influxdb: full nox modules (ADR 0044/0046) jschoubben 2026-09-04 02:44:17 +02:00
  • eccfc70991 grafana, tautulli, nextcloud, nodered: full nox modules (ADR 0044/0046) jschoubben 2026-09-04 02:43:20 +02:00
  • 1e2a849b90 nzbget, qbittorrent: full nox downloader modules (ADR 0044/0046) jschoubben 2026-09-04 02:40:06 +02:00
  • d7ceb05e53 jackett, bazarr, ombi: full nox modules (ADR 0044/0046) jschoubben 2026-09-04 02:39:50 +02:00
  • 4d04585831 redis, postgres: full nox provider modules — client, tools, provisioner, events jschoubben 2026-09-04 02:39:03 +02:00
  • f689b7dfa6 minio: full nox module — client, tools, provisioner and events (ADR 0044/0045/0046) jschoubben 2026-09-04 02:35:51 +02:00
  • fb42fb956b sonarr, radarr: full nox modules — clients, tools and events (ADR 0044/0046) jschoubben 2026-09-04 02:33:32 +02:00
  • 259c3721b5 gitea: full nox module — client, tools and events (ADR 0044/0046) jschoubben 2026-09-04 02:30:40 +02:00
  • 4d98da18a0 keycloak: full nox module — client, tools and events (ADR 0044/0046) jschoubben 2026-09-04 02:30:40 +02:00
  • 1498a22c94 mailu: full nox module — client, tools and events (ADR 0044/0046) jschoubben 2026-09-04 02:29:38 +02:00
  • 2526955712 plex: full nox module — client, tools and events (ADR 0044/0046) jschoubben 2026-09-04 02:23:23 +02:00
  • c2c26a29a9 audit-logger: the container names its image directly (a container has no artifact) jschoubben 2026-09-04 02:13:01 +02:00
  • 8f0994fcdc audit-logger: the assigned-module manifest (ADR 0048) jschoubben 2026-09-04 01:56:36 +02:00
  • 43625ec03f audit-logger: record the event's own x-event-id (ADR 0047) jschoubben 2026-09-04 00:26:10 +02:00
  • f77745d7c0 audit-logger: a module that records every event on the mesh jschoubben 2026-09-03 23:50:55 +02:00
  • e8061191c7 umami: complete, on the sdk — the first fully converted module jschoubben 2026-09-03 23:05:20 +02:00
  • f4fc5b3be8 umami: the reference module — a provider as well as a consumer jschoubben 2026-09-03 22:53:07 +02:00
  • c5efbd53ca A module is a package, not a bare manifest jschoubben 2026-09-03 00:47:14 +02:00
  • 86ea181c76 The catalogue moves to its own repository jschoubben 2026-09-02 23:51:53 +02:00