{ "module": "home-assistant", "version": "1", "slug": "hass", "capabilities": [ "container-runtime" ], "emits": [ "state.changed" ], "own-secrets": { "broker": "/var/lib/mesh/home-assistant/broker", "token": "/var/lib/mesh/home-assistant/token" }, "listens": [ { "port": 8123, "protocol": "tcp", "from": "mesh", "why": "the dashboard and the API" } ], "resources": [ { "id": "mesh-state", "type": "directory", "path": "/var/lib/mesh/home-assistant", "mode": "0700" }, { "id": "config", "type": "directory", "path": "/services/home-assistant/config", "mode": "0700", "owner": "1000:1000" }, { "id": "server", "type": "container", "name": "home-assistant", "image": "ghcr.io/home-assistant/home-assistant@sha256:14931c6b13756317849f46da1d01b45937a1150db66c081cfe529d48215943fe", "network": "host", "env": { "TZ": "Etc/UTC" }, "volumes": [ "/services/home-assistant/config:/config" ] }, { "id": "runtime-config", "type": "file", "path": "/var/lib/mesh/home-assistant/config.json", "mode": "0600", "content": "{}\n", "merge": "json" }, { "id": "runtime", "type": "container", "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", "/services/home-assistant/config:/var/lib/home-assistant/config:ro" ], "env": { "MESH_BROKER_FILE": "/run/secrets/broker", "MESH_HOMEASSISTANT_URL": "http://127.0.0.1:8123", "MESH_HOMEASSISTANT_TOKEN_FILE": "/run/secrets/token", "MESH_HOMEASSISTANT_CONFIG_FILE": "/run/config/config.json", "MESH_HOMEASSISTANT_CONFIG_DIR": "/var/lib/home-assistant/config" }, "restart-on": [ "runtime-config" ], "artifact": "runtime" } ], "requires": [ "route" ], "contributes": { "route": { "label": "home-assistant", "port": 8123 } }, "binds": { "route": "/var/lib/mesh/home-assistant/route.json" }, "build": { "on": [ { "arg": "BUILD_BASE", "module": "mesh-tools", "artifact": "build" }, { "arg": "RUNTIME_BASE", "module": "mesh-tools", "artifact": "runtime" } ], "artifacts": [ { "name": "runtime", "kind": "image", "from": "Dockerfile" } ] } }