docs: update design with configurable subjects and improved module

- Add configurable NATS subject patterns with template variables
  (<hostname>, <tier>, <role>) for multi-tenant setups
- Add deploy.discover subject for host discovery
- Simplify CLI to use direct subjects with optional aliases via
  HOMELAB_DEPLOY_ALIAS_* environment variables
- Clarify request/reply flow with UUID-based response subjects
- Expand NixOS module with hardening options, package option,
  and configurable deploy/discover subjects
- Switch CLI framework from cobra to urfave/cli/v3

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-07 03:52:01 +01:00
parent 1460cc533d
commit 1f23a6ddc9
2 changed files with 196 additions and 47 deletions

View File

@@ -40,7 +40,7 @@ Subjects follow `deploy.<tier>.<target>`:
### Planned Package Structure
```
cmd/homelab-deploy/main.go # CLI entrypoint with cobra subcommands
cmd/homelab-deploy/main.go # CLI entrypoint with urfave/cli subcommands
internal/listener/ # Listener mode (NATS subscription, nixos-rebuild execution)
internal/mcp/ # MCP server mode
internal/nats/ # NATS client wrapper