38 lines
1.4 KiB
Markdown
38 lines
1.4 KiB
Markdown
|
|
---
|
||
|
|
okf: "0.1"
|
||
|
|
type: service
|
||
|
|
visibility: private
|
||
|
|
status: active
|
||
|
|
updated: 2026-07-22
|
||
|
|
links:
|
||
|
|
- ../runbooks/home-assistant-deploy.md
|
||
|
|
---
|
||
|
|
|
||
|
|
# home-assistant (configs-as-code)
|
||
|
|
|
||
|
|
**Status: phase 1 (partial).** Read-only import tooling, plus a deploy
|
||
|
|
(repo -> instance) write path for the `api` adapter's automations/scripts/
|
||
|
|
scenes scope only (`scripts/ha/deploy.sh`) — see "Deploy" below. Dashboards,
|
||
|
|
helpers, and the `docker-exec` adapter have no write path yet. See
|
||
|
|
`DESIGN.md` for the full phasing, adapter, sync, and validation model, and
|
||
|
|
for the open questions still blocking phase 2/3.
|
||
|
|
|
||
|
|
## Layout
|
||
|
|
|
||
|
|
```
|
||
|
|
services/home-assistant/
|
||
|
|
├── DESIGN.md # decision registry — read this first
|
||
|
|
├── instances.yaml # per-instance adapter/host/token config
|
||
|
|
├── .gitignore # excludes secrets/db/log/token paths from every import
|
||
|
|
├── config/<instance>/ # canonical, normalized /config mirror per instance
|
||
|
|
├── storage-export/<instance>/ # curated .storage/* export (registries, dashboards)
|
||
|
|
└── fixtures/ # dated /api/states snapshots
|
||
|
|
```
|
||
|
|
|
||
|
|
Instances: `ken` (RPi4/HAOS, LAN 192.168.31.7, api adapter — canonical home
|
||
|
|
instance since the 2026-07-22 cutover), `ken-legacy` (PIHA, container
|
||
|
|
`homeassistant5`, docker-exec adapter, archived — pre-migration instance,
|
||
|
|
import only, never deploy), `chelsty-ha` (Tailscale, api adapter — see
|
||
|
|
`instances.yaml` and `DESIGN.md` "Incident log").
|
||
|
|
|