From d4ac20f511890fa496c5e4063408080aa74e1264 Mon Sep 17 00:00:00 2001 From: ginnoir Date: Wed, 3 Jun 2026 22:14:05 -0500 Subject: [PATCH] docs: link homelabstack infra repo in claude.md --- CLAUDE.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 29cdb4f..27731fd 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -159,6 +159,27 @@ Tasks for each phase live in [`docs/tasks/`](docs/tasks/). Sub-sessions should p --- +## Infrastructure repo + +Compose stack, Caddyfile, and `.env` for the whole homelab (including famapp) live at: + +``` +C:\Users\MattC\Documents\homelabstack +``` + +GitHub: `ginnoir/homelabstack` (private). This is the source of truth for all infra files — **not** `deploy/` in this repo. + +When famapp development requires an infra change (new env var, new service, Caddyfile route, etc.): + +1. `cd C:\Users\MattC\Documents\homelabstack` and run `sync-prod.ps1` first (pulls current prod state) +2. Edit `docker-compose.yml`, `.env`, and/or `Caddyfile` as needed +3. Run `apply-compose.ps1` (flags: `-Compose`, `-Caddy`, `-EnvFile`) to push to valhalla +4. Commit and push the homelabstack repo + +The homelabstack `CLAUDE.md` is the authoritative brief for that repo — read it before editing infra files. + +--- + ## Where things live - **This brief:** `CLAUDE.md` @@ -166,5 +187,5 @@ Tasks for each phase live in [`docs/tasks/`](docs/tasks/). Sub-sessions should p - **Architecture decisions worth preserving:** `docs/decisions/NNNN-title.md` (lightweight ADR — only when a non-obvious choice is made) - **App code:** `src/` - **Drizzle migrations:** `drizzle/` -- **Deploy:** `deploy/` (compose.yaml, Caddyfile snippet, Authentik bootstrap) +- **Infra (compose/Caddyfile/.env):** `C:\Users\MattC\Documents\homelabstack` - **Memory (cross-session):** `C:\Users\MattC\.claude\projects\C--Users-MattC-Documents-famapp\memory\`