|
| 1 | +# Development Notes |
| 2 | + |
| 3 | +This document captures technical findings and gotchas discovered while building this add-on. |
| 4 | + |
| 5 | +## Add-on structure |
| 6 | + |
| 7 | +- `config.yaml` — add-on metadata, options schema, port mappings |
| 8 | +- `Dockerfile` — builds on HA base image, installs Node.js, npm, jq and MeshCentral |
| 9 | +- `run.sh` — startup script using `bashio` for option reading and logging |
| 10 | + |
| 11 | +## MeshCentral config.json |
| 12 | + |
| 13 | +Valid options reference: https://config.meshcentraltools.com |
| 14 | + |
| 15 | +Known invalid/problematic options: |
| 16 | +- `cleanErrorLog` — **not a valid option**, do not use |
| 17 | +- `mstsc: false` — **disables RDP access**, omit entirely (default is true) |
| 18 | + |
| 19 | +### certUrl |
| 20 | +Required for agents outside the local network. Without it, agents cannot verify SSL and will fail to connect. The `run.sh` script updates this on every restart from the add-on `cert_url` option using `jq`. |
| 21 | + |
| 22 | +### Folder paths |
| 23 | +MeshCentral creates extra folders next to `--datapath` by default. We redirect them: |
| 24 | +- `--filespath` CLI flag → `DATA_PATH/meshcentral-files` |
| 25 | +- `settings.autoBackup.backupPath` → `DATA_PATH/meshcentral-backups` |
| 26 | +- `domains[""].sessionRecording.filepath` → `DATA_PATH/meshcentral-recordings` |
| 27 | +- `meshcentral-web` **cannot** be redirected (MeshCentral limitation) |
| 28 | + |
| 29 | +## GitHub Actions build |
| 30 | + |
| 31 | +- Uses `docker/build-push-action` for multi-arch builds (amd64, aarch64, armhf, armv7, i386) |
| 32 | +- Requires **Read and write permissions** under repo Settings → Actions → Workflow permissions |
| 33 | +- Images pushed to `ghcr.io/andlo/meshcentral-addon-{arch}` |
| 34 | +- Build triggers on push to `meshcentral/**` and on release publish |
| 35 | + |
| 36 | +## Related |
| 37 | +- [ha-meshcentral integration](https://github.com/andlo/ha-meshcentral) — HACS integration |
| 38 | +- [DEVELOPMENT.md in ha-meshcentral](https://github.com/andlo/ha-meshcentral/blob/main/DEVELOPMENT.md) — WebSocket API notes |
0 commit comments