mirror of
https://github.com/harivansh-afk/betterNAS.git
synced 2026-04-15 09:01:13 +00:00
| .. | ||
| cmd/control-plane | ||
| Dockerfile | ||
| go.mod | ||
| go.sum | ||
| package.json | ||
| README.md | ||
betterNAS Control Plane
Go service that owns the product control plane.
It is intentionally small for now:
GET /healthGET /versionPOST /api/v1/nodes/registerPOST /api/v1/nodes/{nodeId}/heartbeatPUT /api/v1/nodes/{nodeId}/exportsGET /api/v1/exportsPOST /api/v1/mount-profiles/issuePOST /api/v1/cloud-profiles/issue
The request and response shapes must follow the contracts in
packages/contracts.
/api/v1/* endpoints require bearer auth. New nodes register with
the same username and password session that users use in the web app.
BETTERNAS_USERNAME and BETTERNAS_PASSWORD may be provided to seed a default
account for local or self-hosted setups. Nodes and exports are owned by users,
and mount profiles return the account username plus the mount URL so Finder can
authenticate with that same betterNAS password. Multi-export sync should send
an explicit mountPath per export so mount profiles can stay stable across
runtimes.