From 48850ebf9092d294f14886aca7098ea659acf999 Mon Sep 17 00:00:00 2001 From: jochen Date: Wed, 30 Sep 2026 22:29:28 +0200 Subject: [PATCH] The mesh's own files for a module are placed by the mesh, not the definition (issue 174) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 48 definitions stop naming /var/lib/mesh/: the directory says `place: "mesh"`, the two subdirectories beneath it (gitea's runtime state, anthropic-manager's output) state their path beneath it, and every credential, binding, merged file and mount names it as ${dir:mesh-state}. Resolved on the default root, every definition names exactly the paths it named before — TestPlacedDirectoriesKeepTheirPaths in mesh-controller, run over both checkouts. Needs the controller that knows the word (mesh-controller, same branch) one release ahead. --- modules/anthropic-consumer/module.json | 8 ++++---- modules/anthropic-manager/module.json | 16 ++++++++-------- modules/baserow/module.json | 12 ++++++------ modules/bazarr/module.json | 18 +++++++++--------- modules/bookshelf/module.json | 10 +++++----- modules/builder/module.json | 16 ++++++++-------- modules/cloudflare-dns/module.json | 8 ++++---- modules/confluence/module.json | 8 ++++---- modules/dnsmasq/module.json | 6 +++--- modules/gitea/module.json | 16 ++++++++-------- modules/gitlab/module.json | 8 ++++---- modules/grafana/module.json | 18 +++++++++--------- modules/home-assistant/module.json | 18 +++++++++--------- modules/icecast/module.json | 12 ++++++------ modules/influxdb/module.json | 12 ++++++------ modules/invoicing/module.json | 4 ++-- modules/jira/module.json | 8 ++++---- modules/keycloak/module.json | 12 ++++++------ modules/letta/module.json | 12 ++++++------ modules/lidarr/module.json | 10 +++++----- modules/mailu/module.json | 12 ++++++------ modules/marrytts/module.json | 4 ++-- modules/mesh-catalog/module.json | 8 ++++---- modules/mesh-console/module.json | 8 ++++---- modules/mesh-vault/module.json | 8 ++++---- modules/minio/module.json | 8 ++++---- modules/model-usage/module.json | 8 ++++---- modules/mongodb/module.json | 8 ++++---- modules/mosquitto/module.json | 14 +++++++------- modules/mssql/module.json | 8 ++++---- modules/nextcloud/module.json | 12 ++++++------ modules/nodered/module.json | 18 +++++++++--------- modules/nzbget/module.json | 16 ++++++++-------- modules/ombi/module.json | 18 +++++++++--------- modules/plex/module.json | 12 ++++++------ modules/portainer/module.json | 14 +++++++------- modules/postgres/module.json | 8 ++++---- modules/qbittorrent/module.json | 16 ++++++++-------- modules/radarr/module.json | 10 +++++----- modules/records/module.json | 18 +++++++++--------- modules/redis/module.json | 8 ++++---- modules/searxng/module.json | 14 +++++++------- modules/showcase/module.json | 8 ++++---- modules/sonarr/module.json | 10 +++++----- modules/step-ca/module.json | 14 +++++++------- modules/tautulli/module.json | 14 +++++++------- modules/umami/module.json | 8 ++++---- modules/unifi/module.json | 14 +++++++------- 48 files changed, 275 insertions(+), 275 deletions(-) diff --git a/modules/anthropic-consumer/module.json b/modules/anthropic-consumer/module.json index fe0a2a1..7b4c3ad 100644 --- a/modules/anthropic-consumer/module.json +++ b/modules/anthropic-consumer/module.json @@ -15,7 +15,7 @@ "model-access": "${dir:state}/access-token" }, "own-secrets": { - "broker": "/var/lib/mesh/anthropic-consumer/broker" + "broker": "${dir:mesh-state}/broker" }, "emits": [ "usage.session" @@ -24,8 +24,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/anthropic-consumer", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -76,7 +76,7 @@ "/app/modules/anthropic-consumer/dist/usage/index.js" ], "volumes": [ - "/var/lib/mesh/anthropic-consumer/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:state}:/run/state" ], "env": { diff --git a/modules/anthropic-manager/module.json b/modules/anthropic-manager/module.json index a82b24d..51b3ec8 100644 --- a/modules/anthropic-manager/module.json +++ b/modules/anthropic-manager/module.json @@ -9,13 +9,13 @@ "model-access" ], "binds": { - "model-access": "/var/lib/mesh/anthropic-manager/model.json" + "model-access": "${dir:mesh-state}/model.json" }, "secrets": { - "model-access": "/var/lib/mesh/anthropic-manager/refresh-token" + "model-access": "${dir:mesh-state}/refresh-token" }, "own-secrets": { - "broker": "/var/lib/mesh/anthropic-manager/broker" + "broker": "${dir:mesh-state}/broker" }, "emits": [ "usage.read" @@ -24,13 +24,13 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/anthropic-manager", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "out", "type": "directory", - "path": "/var/lib/mesh/anthropic-manager/out", + "path": "${dir:mesh-state}/out", "mode": "0700" }, { @@ -45,8 +45,8 @@ "/app/modules/anthropic-manager/dist/refresh/index.js" ], "volumes": [ - "/var/lib/mesh/anthropic-manager/broker:/run/secrets/broker:ro", - "/var/lib/mesh/anthropic-manager:/run/state" + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}:/run/state" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", diff --git a/modules/baserow/module.json b/modules/baserow/module.json index 9dfd6f3..66a229a 100644 --- a/modules/baserow/module.json +++ b/modules/baserow/module.json @@ -26,7 +26,7 @@ }, "own-secrets": { "admin": "${dir:state}/admin.secret", - "broker": "/var/lib/mesh/baserow/broker" + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -41,8 +41,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/baserow", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -88,7 +88,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/baserow/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{\n \"password\": \"${secret:admin}\",\n \"host\": \"${bound:route:name}\"\n}\n", "merge": "json" @@ -99,8 +99,8 @@ "name": "mesh-baserow", "network": "baserow", "volumes": [ - "/var/lib/mesh/baserow/broker:/run/secrets/broker:ro", - "/var/lib/mesh/baserow/config.json:/run/config/config.json:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", diff --git a/modules/bazarr/module.json b/modules/bazarr/module.json index 1171144..83da4b3 100644 --- a/modules/bazarr/module.json +++ b/modules/bazarr/module.json @@ -8,8 +8,8 @@ "subtitle.downloaded" ], "own-secrets": { - "broker": "/var/lib/mesh/bazarr/broker", - "api-key": "/var/lib/mesh/bazarr/api-key" + "broker": "${dir:mesh-state}/broker", + "api-key": "${dir:mesh-state}/api-key" }, "listens": [ { @@ -42,8 +42,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/bazarr", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "config", @@ -76,7 +76,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/bazarr/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -87,9 +87,9 @@ "name": "mesh-bazarr", "network": "host", "volumes": [ - "/var/lib/mesh/bazarr/broker:/run/secrets/broker:ro", - "/var/lib/mesh/bazarr/api-key:/run/secrets/api-key:ro", - "/var/lib/mesh/bazarr/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/api-key:/run/secrets/api-key:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "/services/bazarr/config:/var/lib/bazarr/config:ro" ], "env": { @@ -115,7 +115,7 @@ } }, "binds": { - "route": "/var/lib/mesh/bazarr/route.json" + "route": "${dir:mesh-state}/route.json" }, "build": { "on": [ diff --git a/modules/bookshelf/module.json b/modules/bookshelf/module.json index 4447e4b..caf9bba 100644 --- a/modules/bookshelf/module.json +++ b/modules/bookshelf/module.json @@ -11,7 +11,7 @@ ], "consumes": [], "own-secrets": { - "broker": "/var/lib/mesh/bookshelf/broker" + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -36,8 +36,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/bookshelf", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "config", @@ -71,7 +71,7 @@ "name": "mesh-bookshelf", "network": "host", "volumes": [ - "/var/lib/mesh/bookshelf/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "/services/bookshelf/config:/var/lib/bookshelf/config:ro" ], "env": { @@ -92,7 +92,7 @@ } }, "binds": { - "route": "/var/lib/mesh/bookshelf/route.json" + "route": "${dir:mesh-state}/route.json" }, "build": { "on": [ diff --git a/modules/builder/module.json b/modules/builder/module.json index 70147ad..81f6fc6 100644 --- a/modules/builder/module.json +++ b/modules/builder/module.json @@ -15,20 +15,20 @@ "npm-package-registry" ], "binds": { - "npm-package-registry": "/var/lib/mesh/builder/package-registry.json" + "npm-package-registry": "${dir:mesh-state}/package-registry.json" }, "secrets": { - "npm-package-registry": "/var/lib/mesh/builder/package-registry.secret" + "npm-package-registry": "${dir:mesh-state}/package-registry.secret" }, "own-secrets": { - "broker": "/var/lib/mesh/builder/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/builder", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "workspace", @@ -38,7 +38,7 @@ { "id": "builder-env", "type": "file", - "path": "/var/lib/mesh/builder/builder.env", + "path": "${dir:mesh-state}/builder.env", "mode": "0600", "content": "MESH_BROKER_FILE=/run/mesh/broker\nMESH_NODE=${machine:name}\nMESH_REGISTRY=${bound:artifact-store:at}:${bound:artifact-store:port}\nMESH_PACKAGE_BINDING=/run/mesh/package-registry.json\nMESH_NPM_TOKEN_FILE=/run/mesh/package-registry.secret\nMESH_WORKSPACE=${dir:workspace}\n" }, @@ -48,10 +48,10 @@ "name": "mesh-builder", "artifact": "server", "env-file": [ - "/var/lib/mesh/builder/builder.env" + "${dir:mesh-state}/builder.env" ], "volumes": [ - "/var/lib/mesh/builder:/run/mesh:ro", + "${dir:mesh-state}:/run/mesh:ro", "${dir:workspace}:${dir:workspace}", "/var/run/docker.sock:/var/run/docker.sock" ], diff --git a/modules/cloudflare-dns/module.json b/modules/cloudflare-dns/module.json index 6eb60a5..3dd2267 100644 --- a/modules/cloudflare-dns/module.json +++ b/modules/cloudflare-dns/module.json @@ -19,7 +19,7 @@ }, "own-secrets": { "token": "${dir:state}/token", - "broker": "/var/lib/mesh/cloudflare-dns/broker" + "broker": "${dir:mesh-state}/broker" }, "emits": [ "record.created", @@ -29,8 +29,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/cloudflare-dns", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -60,7 +60,7 @@ "${dir:state}/config.json:/run/config/config.json:ro", "${dir:grants}:/grants", "${dir:state}/token:/run/secrets/token:ro", - "/var/lib/mesh/cloudflare-dns/broker:/run/secrets/broker:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro" ], "env": { "MESH_CLOUDFLARE_TOKEN_FILE": "/run/secrets/token", diff --git a/modules/confluence/module.json b/modules/confluence/module.json index ffae1a9..5e32288 100644 --- a/modules/confluence/module.json +++ b/modules/confluence/module.json @@ -4,14 +4,14 @@ "slug": "confl", "own-secrets": { "token": "${dir:state}/token", - "broker": "/var/lib/mesh/confluence/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/confluence", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -35,7 +35,7 @@ "volumes": [ "${dir:state}/config.json:/run/config/config.json:ro", "${dir:state}/token:/run/secrets/token:ro", - "/var/lib/mesh/confluence/broker:/run/secrets/broker:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro" ], "env": { "MESH_CONFLUENCE_TOKEN_FILE": "/run/secrets/token", diff --git a/modules/dnsmasq/module.json b/modules/dnsmasq/module.json index c7874c6..a5bd979 100644 --- a/modules/dnsmasq/module.json +++ b/modules/dnsmasq/module.json @@ -12,7 +12,7 @@ "name.removed" ], "own-secrets": { - "broker": "/var/lib/mesh/dnsmasq/broker" + "broker": "${dir:mesh-state}/broker" }, "claims": [ { @@ -42,8 +42,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/dnsmasq", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "package", diff --git a/modules/gitea/module.json b/modules/gitea/module.json index c7f1ac4..1ebd6cf 100644 --- a/modules/gitea/module.json +++ b/modules/gitea/module.json @@ -86,19 +86,19 @@ } ], "own-secrets": { - "broker": "/var/lib/mesh/gitea/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/gitea", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "runtime-state", "type": "directory", - "path": "/var/lib/mesh/gitea/state", + "path": "${dir:mesh-state}/state", "mode": "0700" }, { @@ -175,7 +175,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/gitea/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -186,11 +186,11 @@ "name": "mesh-gitea", "network": "host", "volumes": [ - "/var/lib/mesh/gitea/broker:/run/secrets/broker:ro", - "/var/lib/mesh/gitea/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "${dir:grants}:${dir:grants}:ro", "${dir:state}/admin.secret:/run/secrets/admin:ro", - "/var/lib/mesh/gitea/state:/run/state" + "${dir:runtime-state}:/run/state" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", diff --git a/modules/gitlab/module.json b/modules/gitlab/module.json index ac96364..1667c10 100644 --- a/modules/gitlab/module.json +++ b/modules/gitlab/module.json @@ -3,14 +3,14 @@ "version": "1", "own-secrets": { "token": "${dir:state}/token", - "broker": "/var/lib/mesh/gitlab/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/gitlab", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -34,7 +34,7 @@ "volumes": [ "${dir:state}/config.json:/run/config/config.json:ro", "${dir:state}/token:/run/secrets/token:ro", - "/var/lib/mesh/gitlab/broker:/run/secrets/broker:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro" ], "env": { "MESH_GITLAB_TOKEN_FILE": "/run/secrets/token", diff --git a/modules/grafana/module.json b/modules/grafana/module.json index 9980b0d..023e5dd 100644 --- a/modules/grafana/module.json +++ b/modules/grafana/module.json @@ -5,8 +5,8 @@ "alert.firing" ], "own-secrets": { - "admin": "/var/lib/mesh/grafana/admin", - "broker": "/var/lib/mesh/grafana/broker" + "admin": "${dir:mesh-state}/admin", + "broker": "${dir:mesh-state}/broker" }, "capabilities": [ "container-runtime" @@ -24,8 +24,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/grafana", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -108,7 +108,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/grafana/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{\n \"user\": \"admin\",\n \"password\": \"${secret:admin}\"\n}\n", "merge": "json" @@ -119,8 +119,8 @@ "name": "mesh-grafana", "network": "host", "volumes": [ - "/var/lib/mesh/grafana/broker:/run/secrets/broker:ro", - "/var/lib/mesh/grafana/config.json:/run/config/config.json:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", @@ -158,8 +158,8 @@ "influxdb-api": "${dir:state}/influxdb.json" }, "secrets": { - "oidc-client": "/var/lib/mesh/grafana/oidc-client", - "influxdb-api": "/var/lib/mesh/grafana/influxdb-api" + "oidc-client": "${dir:mesh-state}/oidc-client", + "influxdb-api": "${dir:mesh-state}/influxdb-api" }, "build": { "on": [ diff --git a/modules/home-assistant/module.json b/modules/home-assistant/module.json index ce74d3e..08ebd92 100644 --- a/modules/home-assistant/module.json +++ b/modules/home-assistant/module.json @@ -9,8 +9,8 @@ "state.changed" ], "own-secrets": { - "broker": "/var/lib/mesh/home-assistant/broker", - "token": "/var/lib/mesh/home-assistant/token" + "broker": "${dir:mesh-state}/broker", + "token": "${dir:mesh-state}/token" }, "listens": [ { @@ -39,8 +39,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/home-assistant", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -74,7 +74,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/home-assistant/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -85,9 +85,9 @@ "name": "mesh-home-assistant", "network": "host", "volumes": [ - "/var/lib/mesh/home-assistant/broker:/run/secrets/broker:ro", - "/var/lib/mesh/home-assistant/token:/run/secrets/token:ro", - "/var/lib/mesh/home-assistant/config.json:/run/config/config.json:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/token:/run/secrets/token:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", @@ -107,7 +107,7 @@ "network": "host", "run-once": true, "volumes": [ - "/var/lib/mesh/home-assistant/token:/run/secrets/token:ro", + "${dir:mesh-state}/token:/run/secrets/token:ro", "${dir:written}:/var/lib/home-assistant-provisions", "${dir:state}/mqtt-topic.json:/run/provisions/mqtt-topic.json:ro", "${dir:state}/mqtt-topic.secret:/run/provisions/mqtt-topic.secret:ro", diff --git a/modules/icecast/module.json b/modules/icecast/module.json index b3a1df1..327eae1 100644 --- a/modules/icecast/module.json +++ b/modules/icecast/module.json @@ -29,7 +29,7 @@ "stream.stopped" ], "own-secrets": { - "broker": "/var/lib/mesh/icecast/broker" + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -44,8 +44,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/icecast", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -91,7 +91,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/icecast/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -102,8 +102,8 @@ "name": "mesh-icecast", "network": "icecast", "volumes": [ - "/var/lib/mesh/icecast/broker:/run/secrets/broker:ro", - "/var/lib/mesh/icecast/config.json:/run/config/config.json:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", diff --git a/modules/influxdb/module.json b/modules/influxdb/module.json index 5d3ac68..3b8976c 100644 --- a/modules/influxdb/module.json +++ b/modules/influxdb/module.json @@ -11,7 +11,7 @@ "container-runtime" ], "own-secrets": { - "broker": "/var/lib/mesh/influxdb/broker", + "broker": "${dir:mesh-state}/broker", "admin": "${dir:state}/admin.secret", "admin-token": "${dir:state}/admin-token.secret" }, @@ -42,8 +42,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/influxdb", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -96,7 +96,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/influxdb/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -107,8 +107,8 @@ "name": "mesh-influxdb", "network": "host", "volumes": [ - "/var/lib/mesh/influxdb/broker:/run/secrets/broker:ro", - "/var/lib/mesh/influxdb/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "${dir:state}/admin-token.secret:/run/secrets/admin-token:ro", "${dir:grants}:${dir:grants}:ro" ], diff --git a/modules/invoicing/module.json b/modules/invoicing/module.json index de79397..31499bf 100644 --- a/modules/invoicing/module.json +++ b/modules/invoicing/module.json @@ -54,8 +54,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/invoicing", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", diff --git a/modules/jira/module.json b/modules/jira/module.json index d8ac539..5cf05cc 100644 --- a/modules/jira/module.json +++ b/modules/jira/module.json @@ -3,14 +3,14 @@ "version": "1", "own-secrets": { "token": "${dir:state}/token", - "broker": "/var/lib/mesh/jira/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/jira", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -34,7 +34,7 @@ "volumes": [ "${dir:state}/config.json:/run/config/config.json:ro", "${dir:state}/token:/run/secrets/token:ro", - "/var/lib/mesh/jira/broker:/run/secrets/broker:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro" ], "env": { "MESH_JIRA_TOKEN_FILE": "/run/secrets/token", diff --git a/modules/keycloak/module.json b/modules/keycloak/module.json index 1afc95e..b7c6569 100644 --- a/modules/keycloak/module.json +++ b/modules/keycloak/module.json @@ -62,14 +62,14 @@ }, "own-secrets": { "admin": "${dir:state}/admin.secret", - "broker": "/var/lib/mesh/keycloak/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/keycloak", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -139,7 +139,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/keycloak/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -150,8 +150,8 @@ "name": "mesh-keycloak", "network": "host", "volumes": [ - "/var/lib/mesh/keycloak/broker:/run/secrets/broker:ro", - "/var/lib/mesh/keycloak/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "${dir:state}/admin.secret:/run/secrets/admin:ro", "${dir:grants}:${dir:grants}:ro" ], diff --git a/modules/letta/module.json b/modules/letta/module.json index 2fa834d..c3107a2 100644 --- a/modules/letta/module.json +++ b/modules/letta/module.json @@ -27,7 +27,7 @@ "own-secrets": { "server-password": "${dir:state}/server-password.secret", "openai-api-key": "${dir:state}/openai-api-key.secret", - "broker": "/var/lib/mesh/letta/broker" + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -42,8 +42,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/letta", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -80,7 +80,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/letta/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{\n \"password\": \"${secret:server-password}\"\n}\n", "merge": "json" @@ -91,8 +91,8 @@ "name": "mesh-letta", "network": "letta", "volumes": [ - "/var/lib/mesh/letta/broker:/run/secrets/broker:ro", - "/var/lib/mesh/letta/config.json:/run/config/config.json:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", diff --git a/modules/lidarr/module.json b/modules/lidarr/module.json index 30c71fa..d69c43e 100644 --- a/modules/lidarr/module.json +++ b/modules/lidarr/module.json @@ -10,7 +10,7 @@ ], "consumes": [], "own-secrets": { - "broker": "/var/lib/mesh/lidarr/broker" + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -35,8 +35,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/lidarr", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "config", @@ -70,7 +70,7 @@ "name": "mesh-lidarr", "network": "host", "volumes": [ - "/var/lib/mesh/lidarr/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "/services/lidarr/config:/var/lib/lidarr/config:ro" ], "env": { @@ -91,7 +91,7 @@ } }, "binds": { - "route": "/var/lib/mesh/lidarr/route.json" + "route": "${dir:mesh-state}/route.json" }, "build": { "on": [ diff --git a/modules/mailu/module.json b/modules/mailu/module.json index 98447f6..9f63581 100644 --- a/modules/mailu/module.json +++ b/modules/mailu/module.json @@ -138,14 +138,14 @@ } ], "own-secrets": { - "broker": "/var/lib/mesh/mailu/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/mailu", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -467,7 +467,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/mailu/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -478,10 +478,10 @@ "name": "mesh-mailu", "network": "mailu", "volumes": [ - "/var/lib/mesh/mailu/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:state}/api-token.secret:/run/secrets/api-token:ro", "${dir:grants}:${dir:grants}:ro", - "/var/lib/mesh/mailu/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "/var/run/docker.sock:/var/run/docker.sock" ], "env": { diff --git a/modules/marrytts/module.json b/modules/marrytts/module.json index e14ef44..bd12abf 100644 --- a/modules/marrytts/module.json +++ b/modules/marrytts/module.json @@ -17,8 +17,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/marrytts", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "server", diff --git a/modules/mesh-catalog/module.json b/modules/mesh-catalog/module.json index 6afa050..371f10b 100644 --- a/modules/mesh-catalog/module.json +++ b/modules/mesh-catalog/module.json @@ -26,7 +26,7 @@ "postgres-database": "${dir:state}/database.secret" }, "own-secrets": { - "broker": "/var/lib/mesh/mesh-catalog/broker" + "broker": "${dir:mesh-state}/broker" }, "consumes": [ "mesh-build-machine.built", @@ -43,8 +43,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/mesh-catalog", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -65,7 +65,7 @@ "name": "mesh-catalog", "network": "host", "volumes": [ - "/var/lib/mesh/mesh-catalog/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:state}:/run/state", "${dir:state}/database.url:/run/secrets/database-url:ro" ], diff --git a/modules/mesh-console/module.json b/modules/mesh-console/module.json index 3228816..60cf9ef 100644 --- a/modules/mesh-console/module.json +++ b/modules/mesh-console/module.json @@ -9,7 +9,7 @@ "*" ], "own-secrets": { - "broker": "/var/lib/mesh/mesh-console/broker" + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -24,8 +24,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/mesh-console", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "server", @@ -40,7 +40,7 @@ "MESH_CONSOLE_LISTEN": "127.0.0.1:${port:4270}" }, "volumes": [ - "/var/lib/mesh/mesh-console/broker:/run/secrets/broker:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro" ], "artifact": "runtime" } diff --git a/modules/mesh-vault/module.json b/modules/mesh-vault/module.json index 3d0e2fa..991e237 100644 --- a/modules/mesh-vault/module.json +++ b/modules/mesh-vault/module.json @@ -28,14 +28,14 @@ }, "keeps": "/var/lib/mesh-vault/root", "own-secrets": { - "broker": "/var/lib/mesh/mesh-vault/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/mesh-vault", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -64,7 +64,7 @@ "name": "mesh-vault", "network": "host", "volumes": [ - "/var/lib/mesh/mesh-vault/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:grants}:${dir:grants}:ro", "${dir:ledger}:${dir:ledger}", "${dir:root}:${dir:root}:ro" diff --git a/modules/minio/module.json b/modules/minio/module.json index 30976f9..eb304b4 100644 --- a/modules/minio/module.json +++ b/modules/minio/module.json @@ -60,14 +60,14 @@ }, "own-secrets": { "root": "${dir:state}/root.secret", - "broker": "/var/lib/mesh/minio/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/minio", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -132,7 +132,7 @@ "name": "mesh-minio", "network": "minio-net", "volumes": [ - "/var/lib/mesh/minio/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:grants}:${dir:grants}:ro", "${dir:state}/root.secret:/run/secrets/root:ro" ], diff --git a/modules/model-usage/module.json b/modules/model-usage/module.json index 40df226..c627c5c 100644 --- a/modules/model-usage/module.json +++ b/modules/model-usage/module.json @@ -23,14 +23,14 @@ "*.usage.*" ], "own-secrets": { - "broker": "/var/lib/mesh/model-usage/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/model-usage", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -52,7 +52,7 @@ "image": "mesh-runtime-model-usage@sha256:0000000000000000000000000000000000000000000000000000000000000000", "network": "host", "volumes": [ - "/var/lib/mesh/model-usage/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:state}:/run/state", "${dir:state}/database.url:/run/secrets/database-url:ro" ], diff --git a/modules/mongodb/module.json b/modules/mongodb/module.json index 61849f3..8aa8a40 100644 --- a/modules/mongodb/module.json +++ b/modules/mongodb/module.json @@ -40,15 +40,15 @@ }, "own-secrets": { "root": "${dir:state}/root.secret", - "broker": "/var/lib/mesh/mongodb/broker" + "broker": "${dir:mesh-state}/broker" }, "secrets-owner": "999:999", "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/mongodb", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -95,7 +95,7 @@ "name": "mesh-mongodb", "network": "mongodb", "volumes": [ - "/var/lib/mesh/mongodb/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:grants}:${dir:grants}:ro", "${dir:state}/root.secret:/run/secrets/root:ro" ], diff --git a/modules/mosquitto/module.json b/modules/mosquitto/module.json index 34570c2..ed5390e 100644 --- a/modules/mosquitto/module.json +++ b/modules/mosquitto/module.json @@ -32,8 +32,8 @@ "mqtt-topic": "${dir:grants}" }, "own-secrets": { - "admin": "/var/lib/mesh/mosquitto/admin", - "broker": "/var/lib/mesh/mosquitto/broker" + "admin": "${dir:mesh-state}/admin", + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -55,8 +55,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/mosquitto", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -95,7 +95,7 @@ "run-once": true, "volumes": [ "${dir:data}:/mosquitto/data", - "/var/lib/mesh/mosquitto/admin:/run/secrets/admin:ro" + "${dir:mesh-state}/admin:/run/secrets/admin:ro" ], "env": { "MESH_PROVISION_MQTT": "mosquitto:1883", @@ -130,9 +130,9 @@ "name": "mesh-mosquitto", "network": "mosquitto", "volumes": [ - "/var/lib/mesh/mosquitto/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:grants}:${dir:grants}:ro", - "/var/lib/mesh/mosquitto/admin:/run/secrets/admin:ro" + "${dir:mesh-state}/admin:/run/secrets/admin:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", diff --git a/modules/mssql/module.json b/modules/mssql/module.json index b362154..f6a2137 100644 --- a/modules/mssql/module.json +++ b/modules/mssql/module.json @@ -38,14 +38,14 @@ }, "own-secrets": { "sa": "${dir:state}/sa.secret", - "broker": "/var/lib/mesh/mssql/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/mssql", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -99,7 +99,7 @@ "name": "mesh-mssql", "network": "mssql", "volumes": [ - "/var/lib/mesh/mssql/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:grants}:/var/lib/mssql/grants:ro", "${dir:state}/sa.secret:/run/secrets/sa:ro" ], diff --git a/modules/nextcloud/module.json b/modules/nextcloud/module.json index 5b82238..60260d0 100644 --- a/modules/nextcloud/module.json +++ b/modules/nextcloud/module.json @@ -31,7 +31,7 @@ ], "own-secrets": { "admin": "${dir:state}/admin.secret", - "broker": "/var/lib/mesh/nextcloud/broker" + "broker": "${dir:mesh-state}/broker" }, "capabilities": [ "container-runtime" @@ -49,8 +49,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/nextcloud", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -90,7 +90,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/nextcloud/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -101,8 +101,8 @@ "name": "mesh-nextcloud", "network": "host", "volumes": [ - "/var/lib/mesh/nextcloud/broker:/run/secrets/broker:ro", - "/var/lib/mesh/nextcloud/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "${dir:state}/admin.secret:/run/secrets/admin:ro", "/var/run/docker.sock:/var/run/docker.sock" ], diff --git a/modules/nodered/module.json b/modules/nodered/module.json index 6bc3325..595c961 100644 --- a/modules/nodered/module.json +++ b/modules/nodered/module.json @@ -5,9 +5,9 @@ "flows.deployed" ], "own-secrets": { - "admin": "/var/lib/mesh/nodered/admin", - "api-token": "/var/lib/mesh/nodered/api-token", - "broker": "/var/lib/mesh/nodered/broker" + "admin": "${dir:mesh-state}/admin", + "api-token": "${dir:mesh-state}/api-token", + "broker": "${dir:mesh-state}/broker" }, "capabilities": [ "container-runtime" @@ -25,8 +25,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/nodered", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -90,7 +90,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/nodered/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{\n \"token\": \"${secret:api-token}\"\n}\n" }, @@ -100,8 +100,8 @@ "name": "mesh-nodered", "network": "host", "volumes": [ - "/var/lib/mesh/nodered/broker:/run/secrets/broker:ro", - "/var/lib/mesh/nodered/config.json:/run/config/config.json:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", @@ -120,7 +120,7 @@ "network": "host", "run-once": true, "volumes": [ - "/var/lib/mesh/nodered/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "${dir:written}:/var/lib/nodered-provisions", "${dir:state}/mqtt-topic.json:/run/provisions/mqtt-topic.json:ro", "${dir:state}/mqtt-topic.secret:/run/provisions/mqtt-topic.secret:ro", diff --git a/modules/nzbget/module.json b/modules/nzbget/module.json index ce3c33d..2510513 100644 --- a/modules/nzbget/module.json +++ b/modules/nzbget/module.json @@ -10,8 +10,8 @@ ], "consumes": [], "own-secrets": { - "broker": "/var/lib/mesh/nzbget/broker", - "password": "/var/lib/mesh/nzbget/password" + "broker": "${dir:mesh-state}/broker", + "password": "${dir:mesh-state}/password" }, "listens": [ { @@ -32,8 +32,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/nzbget", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "config", @@ -63,7 +63,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/nzbget/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -74,9 +74,9 @@ "name": "mesh-nzbget", "network": "host", "volumes": [ - "/var/lib/mesh/nzbget/broker:/run/secrets/broker:ro", - "/var/lib/mesh/nzbget/password:/run/secrets/password:ro", - "/var/lib/mesh/nzbget/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/password:/run/secrets/password:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "/services/nzbget/config:/var/lib/nzbget/config:ro" ], "env": { diff --git a/modules/ombi/module.json b/modules/ombi/module.json index e70cd3d..929dddb 100644 --- a/modules/ombi/module.json +++ b/modules/ombi/module.json @@ -9,8 +9,8 @@ "request.approved" ], "own-secrets": { - "broker": "/var/lib/mesh/ombi/broker", - "api-key": "/var/lib/mesh/ombi/api-key" + "broker": "${dir:mesh-state}/broker", + "api-key": "${dir:mesh-state}/api-key" }, "listens": [ { @@ -25,8 +25,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/ombi", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "config", @@ -55,7 +55,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/ombi/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -66,9 +66,9 @@ "name": "mesh-ombi", "network": "host", "volumes": [ - "/var/lib/mesh/ombi/broker:/run/secrets/broker:ro", - "/var/lib/mesh/ombi/api-key:/run/secrets/api-key:ro", - "/var/lib/mesh/ombi/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/api-key:/run/secrets/api-key:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "/services/ombi/config:/var/lib/ombi/config:ro" ], "env": { @@ -94,7 +94,7 @@ } }, "binds": { - "route": "/var/lib/mesh/ombi/route.json" + "route": "${dir:mesh-state}/route.json" }, "build": { "on": [ diff --git a/modules/plex/module.json b/modules/plex/module.json index 426a70f..b60d682 100644 --- a/modules/plex/module.json +++ b/modules/plex/module.json @@ -13,8 +13,8 @@ "*.download.completed" ], "own-secrets": { - "broker": "/var/lib/mesh/plex/broker", - "token": "/var/lib/mesh/plex/token" + "broker": "${dir:mesh-state}/broker", + "token": "${dir:mesh-state}/token" }, "listens": [ { @@ -51,8 +51,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/plex", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "config", @@ -95,8 +95,8 @@ "name": "mesh-plex", "network": "host", "volumes": [ - "/var/lib/mesh/plex/broker:/run/secrets/broker:ro", - "/var/lib/mesh/plex/token:/run/secrets/token:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/token:/run/secrets/token:ro", "/services/plex/config:/var/lib/plex/config:ro" ], "env": { diff --git a/modules/portainer/module.json b/modules/portainer/module.json index b1de1a0..0e94398 100644 --- a/modules/portainer/module.json +++ b/modules/portainer/module.json @@ -25,8 +25,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/portainer", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "data", @@ -50,7 +50,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/portainer/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -61,8 +61,8 @@ "name": "mesh-portainer", "network": "host", "volumes": [ - "/var/lib/mesh/portainer/broker:/run/secrets/broker:ro", - "/var/lib/mesh/portainer/config.json:/run/config/config.json:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", @@ -76,7 +76,7 @@ } ], "own-secrets": { - "broker": "/var/lib/mesh/portainer/broker" + "broker": "${dir:mesh-state}/broker" }, "build": { "on": [ @@ -109,6 +109,6 @@ } }, "binds": { - "route": "/var/lib/mesh/portainer/route.json" + "route": "${dir:mesh-state}/route.json" } } diff --git a/modules/postgres/module.json b/modules/postgres/module.json index 76166a4..7db0338 100644 --- a/modules/postgres/module.json +++ b/modules/postgres/module.json @@ -49,14 +49,14 @@ }, "own-secrets": { "superuser": "${dir:state}/superuser.secret", - "broker": "/var/lib/mesh/postgres/broker" + "broker": "${dir:mesh-state}/broker" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/postgres", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -99,7 +99,7 @@ "name": "mesh-postgres", "network": "host", "volumes": [ - "/var/lib/mesh/postgres/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:grants}:${dir:grants}:ro", "${dir:state}/superuser.secret:/run/secrets/superuser:ro" ], diff --git a/modules/qbittorrent/module.json b/modules/qbittorrent/module.json index 1efef1a..317501c 100644 --- a/modules/qbittorrent/module.json +++ b/modules/qbittorrent/module.json @@ -11,8 +11,8 @@ ], "consumes": [], "own-secrets": { - "broker": "/var/lib/mesh/qbittorrent/broker", - "password": "/var/lib/mesh/qbittorrent/password" + "broker": "${dir:mesh-state}/broker", + "password": "${dir:mesh-state}/password" }, "listens": [ { @@ -33,8 +33,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/qbittorrent", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "config", @@ -64,7 +64,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/qbittorrent/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -75,9 +75,9 @@ "name": "mesh-qbittorrent", "network": "host", "volumes": [ - "/var/lib/mesh/qbittorrent/broker:/run/secrets/broker:ro", - "/var/lib/mesh/qbittorrent/password:/run/secrets/password:ro", - "/var/lib/mesh/qbittorrent/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/password:/run/secrets/password:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "/services/qbittorrent/config:/var/lib/qbittorrent/config:ro" ], "env": { diff --git a/modules/radarr/module.json b/modules/radarr/module.json index 351fcb3..e719942 100644 --- a/modules/radarr/module.json +++ b/modules/radarr/module.json @@ -10,7 +10,7 @@ ], "consumes": [], "own-secrets": { - "broker": "/var/lib/mesh/radarr/broker" + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -35,8 +35,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/radarr", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "config", @@ -70,7 +70,7 @@ "name": "mesh-radarr", "network": "host", "volumes": [ - "/var/lib/mesh/radarr/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "/services/radarr/config:/var/lib/radarr/config:ro" ], "env": { @@ -91,7 +91,7 @@ } }, "binds": { - "route": "/var/lib/mesh/radarr/route.json" + "route": "${dir:mesh-state}/route.json" }, "build": { "on": [ diff --git a/modules/records/module.json b/modules/records/module.json index 296d7ee..bf45d2f 100644 --- a/modules/records/module.json +++ b/modules/records/module.json @@ -9,10 +9,10 @@ "git" ], "binds": { - "git": "/var/lib/mesh/records/git.json" + "git": "${dir:mesh-state}/git.json" }, "own-secrets": { - "broker": "/var/lib/mesh/records/broker" + "broker": "${dir:mesh-state}/broker" }, "consumes": [ "gitea.pull.merged" @@ -28,8 +28,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/records", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "checkout", @@ -40,7 +40,7 @@ { "id": "config", "type": "file", - "path": "/var/lib/mesh/records/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -48,7 +48,7 @@ { "id": "origin", "type": "file", - "path": "/var/lib/mesh/records/origin", + "path": "${dir:mesh-state}/origin", "mode": "0600", "content": "${bound:git:scheme}://${bound:git:at}:${bound:git:port}\n" }, @@ -58,9 +58,9 @@ "name": "records", "network": "host", "volumes": [ - "/var/lib/mesh/records/broker:/run/secrets/broker:ro", - "/var/lib/mesh/records/config.json:/run/config/config.json:ro", - "/var/lib/mesh/records/origin:/run/config/origin:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/origin:/run/config/origin:ro", "${dir:checkout}:${dir:checkout}" ], "env": { diff --git a/modules/redis/module.json b/modules/redis/module.json index 324ca9a..646a8df 100644 --- a/modules/redis/module.json +++ b/modules/redis/module.json @@ -36,7 +36,7 @@ "secret": "${dir:state}/default.secret" }, "own-secrets": { - "broker": "/var/lib/mesh/redis/broker" + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -51,8 +51,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/redis", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -110,7 +110,7 @@ "name": "mesh-redis", "network": "redis", "volumes": [ - "/var/lib/mesh/redis/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:grants}:/var/lib/redis-module/grants:ro", "${dir:state}/default.secret:/run/secrets/default:ro" ], diff --git a/modules/searxng/module.json b/modules/searxng/module.json index 2aaa312..7d26bdd 100644 --- a/modules/searxng/module.json +++ b/modules/searxng/module.json @@ -5,8 +5,8 @@ "container-runtime" ], "own-secrets": { - "secret": "/var/lib/mesh/searxng/secret", - "broker": "/var/lib/mesh/searxng/broker" + "secret": "${dir:mesh-state}/secret", + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -21,8 +21,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/searxng", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -85,7 +85,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/searxng/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n" }, @@ -95,8 +95,8 @@ "name": "mesh-searxng", "network": "host", "volumes": [ - "/var/lib/mesh/searxng/broker:/run/secrets/broker:ro", - "/var/lib/mesh/searxng/config.json:/run/config/config.json:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", diff --git a/modules/showcase/module.json b/modules/showcase/module.json index 427eb69..ab62731 100644 --- a/modules/showcase/module.json +++ b/modules/showcase/module.json @@ -26,7 +26,7 @@ "postgres-database": "${dir:state}/database.secret" }, "own-secrets": { - "broker": "/var/lib/mesh/showcase/broker" + "broker": "${dir:mesh-state}/broker" }, "claims": [ { @@ -94,8 +94,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/showcase", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -178,7 +178,7 @@ "artifact": "helper", "network": "showcase", "volumes": [ - "/var/lib/mesh/showcase/broker:/run/secrets/broker:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker" diff --git a/modules/sonarr/module.json b/modules/sonarr/module.json index d91708b..4677c20 100644 --- a/modules/sonarr/module.json +++ b/modules/sonarr/module.json @@ -10,7 +10,7 @@ ], "consumes": [], "own-secrets": { - "broker": "/var/lib/mesh/sonarr/broker" + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -39,8 +39,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/sonarr", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "config", @@ -75,7 +75,7 @@ "name": "mesh-sonarr", "network": "host", "volumes": [ - "/var/lib/mesh/sonarr/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "/services/sonarr/config:/var/lib/sonarr/config:ro" ], "env": { @@ -96,7 +96,7 @@ } }, "binds": { - "route": "/var/lib/mesh/sonarr/route.json" + "route": "${dir:mesh-state}/route.json" }, "build": { "on": [ diff --git a/modules/step-ca/module.json b/modules/step-ca/module.json index 0572640..ff35a7e 100644 --- a/modules/step-ca/module.json +++ b/modules/step-ca/module.json @@ -34,14 +34,14 @@ } ], "own-secrets": { - "password": "/var/lib/mesh/step-ca/password" + "password": "${dir:mesh-state}/password" }, "resources": [ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/step-ca", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "home", @@ -53,7 +53,7 @@ { "id": "config", "type": "file", - "path": "/var/lib/mesh/step-ca/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0644", "content": "{}", "merge": "json" @@ -61,7 +61,7 @@ { "id": "init-env", "type": "file", - "path": "/var/lib/mesh/step-ca/init.env", + "path": "${dir:mesh-state}/init.env", "mode": "0600", "content": "DOCKER_STEPCA_INIT_PASSWORD=${secret:password}\nDOCKER_STEPCA_INIT_DNS_NAMES=${machine:at},${machine:name},localhost,127.0.0.1\n" }, @@ -72,7 +72,7 @@ "image": "smallstep/step-ca@sha256:a2b17872915c193259b75a5474c398326f41bd199f0842093e52cf4182bc8270", "network": "host", "env-file": [ - "/var/lib/mesh/step-ca/init.env" + "${dir:mesh-state}/init.env" ], "env": { "DOCKER_STEPCA_INIT_NAME": "Mesh Internal CA", @@ -81,7 +81,7 @@ }, "volumes": [ "${dir:home}:/home/step", - "/var/lib/mesh/step-ca:/run/mesh:ro" + "${dir:mesh-state}:/run/mesh:ro" ], "secrets-in-environment": "the entrypoint honours DOCKER_STEPCA_INIT_PASSWORD_FILE; convertible, awaiting a bed that proves it" } diff --git a/modules/tautulli/module.json b/modules/tautulli/module.json index f59f22a..c0b955b 100644 --- a/modules/tautulli/module.json +++ b/modules/tautulli/module.json @@ -5,7 +5,7 @@ "watch.recorded" ], "own-secrets": { - "broker": "/var/lib/mesh/tautulli/broker" + "broker": "${dir:mesh-state}/broker" }, "capabilities": [ "container-runtime" @@ -23,8 +23,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/tautulli", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "config", @@ -53,7 +53,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/tautulli/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{}\n", "merge": "json" @@ -64,8 +64,8 @@ "name": "mesh-tautulli", "network": "host", "volumes": [ - "/var/lib/mesh/tautulli/broker:/run/secrets/broker:ro", - "/var/lib/mesh/tautulli/config.json:/run/config/config.json:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro", "/services/tautulli/config:/var/lib/tautulli/config:ro" ], "env": { @@ -90,7 +90,7 @@ } }, "binds": { - "route": "/var/lib/mesh/tautulli/route.json" + "route": "${dir:mesh-state}/route.json" }, "build": { "on": [ diff --git a/modules/umami/module.json b/modules/umami/module.json index 630d781..de2b3d6 100644 --- a/modules/umami/module.json +++ b/modules/umami/module.json @@ -45,7 +45,7 @@ "analytics": "${dir:grants}" }, "own-secrets": { - "broker": "/var/lib/mesh/umami/broker" + "broker": "${dir:mesh-state}/broker" }, "listens": [ { @@ -60,8 +60,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/umami", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -113,7 +113,7 @@ "name": "mesh-umami", "network": "umami", "volumes": [ - "/var/lib/mesh/umami/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/broker:/run/secrets/broker:ro", "${dir:grants}:${dir:grants}", "${dir:state}/admin.secret:/run/secrets/admin:ro" ], diff --git a/modules/unifi/module.json b/modules/unifi/module.json index e508a64..d4e1934 100644 --- a/modules/unifi/module.json +++ b/modules/unifi/module.json @@ -73,8 +73,8 @@ { "id": "mesh-state", "type": "directory", - "path": "/var/lib/mesh/unifi", - "mode": "0700" + "mode": "0700", + "place": "mesh" }, { "id": "state", @@ -118,7 +118,7 @@ { "id": "runtime-config", "type": "file", - "path": "/var/lib/mesh/unifi/config.json", + "path": "${dir:mesh-state}/config.json", "mode": "0600", "content": "{\n \"site\": \"default\",\n \"password\": \"${secret:controller}\"\n}\n", "merge": "json" @@ -129,8 +129,8 @@ "name": "mesh-unifi", "network": "host", "volumes": [ - "/var/lib/mesh/unifi/broker:/run/secrets/broker:ro", - "/var/lib/mesh/unifi/config.json:/run/config/config.json:ro" + "${dir:mesh-state}/broker:/run/secrets/broker:ro", + "${dir:mesh-state}/config.json:/run/config/config.json:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", @@ -158,8 +158,8 @@ "route": "${dir:state}/route.json" }, "own-secrets": { - "broker": "/var/lib/mesh/unifi/broker", - "controller": "/var/lib/mesh/unifi/controller" + "broker": "${dir:mesh-state}/broker", + "controller": "${dir:mesh-state}/controller" }, "build": { "on": [