From 1dfff0b7c928f7b66fd29f5e8a61d5722dad5cd8 Mon Sep 17 00:00:00 2001 From: Ty Balascio Date: Sat, 19 Sep 2026 10:12:32 -0700 Subject: [PATCH] docs(deploy): correct host addresses and port-block rules - LAN address 192.168.1.202 for ubudual5060; port block 10880-10889; :10880 off limits. - Release process points at the new ops runbook. --- AGENTS.md | 2 +- deploy/INVENTORY.md | 21 +++++++++++++-------- deploy/RELEASE-PROCESS.md | 13 +++++++++++-- docs/README.md | 5 +++-- 4 files changed, 28 insertions(+), 13 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 719368e..c023db6 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -30,7 +30,7 @@ Product overview: `docs/PRODUCT.md`. **Behavior** for Woo sync, metadata, pricing, and inference is in `docs/capabilities/CREATE.md` and the `docs/contracts/` set. `docs/REQUIREMENTS.md` is the only normative text. Do not implement work outside the M3 requirement subset unless Ty expands scope in chat. -Do not touch deploy port `:10880`. UAT redeploy target is overnight Docker on ubudual5060 `:10881`. +Ports `10880`–`10889` are allocated to this project on ubudual5060; `:10880` itself is taken by Ty's local Node/SvelteKit and must not be bound. The dev-test environment runs on ubudual5060 `:10881` (or another free port in the block) and must be reachable from any machine on `192.168.1.0/24` (bind `0.0.0.0`, e.g. `http://192.168.1.202:10881`). ## Milestones and capabilities diff --git a/deploy/INVENTORY.md b/deploy/INVENTORY.md index 5612069..2270c23 100644 --- a/deploy/INVENTORY.md +++ b/deploy/INVENTORY.md @@ -1,20 +1,25 @@ # Host -## Overnight Milestone 2 Capture (UAT) +Port block `10880`–`10889` on ubudual5060 is allocated to this project. +`:10880` is Ty's local Node/SvelteKit and must never be bound by project deploys. +The dev-test environment binds `0.0.0.0` so any machine on `192.168.1.0/24` can reach it. -- Host: `ubudual5060` / Tailscale `100.64.0.9` +## Dev-test environment (M2 current, M3 incoming) + +- Host: `ubudual5060` / LAN `192.168.1.202` / Tailscale `100.64.0.9` - Container: `slabuploader-m2-overnight` (image `slabuploader-m2:overnight`) -- Port: **10881** → 80 -- URL: `http://100.64.0.9:10881` -- Replaces prior overnight container `slabuploader-m1-overnight` (same port). +- Port: **10881** → 80, bound `0.0.0.0` +- URLs: `http://192.168.1.202:10881` (LAN) · `http://100.64.0.9:10881` (Tailscale) +- M3 replaces this container on the same port; remove the M2 container once M3 is healthy. ## Ty local Node/SvelteKit (do not overwrite) - Host: `ubudual5060` / `100.64.0.9` - Container: `slabuploader-m1` -- Port: **18080** → 80 (inventory previously listed 10880; do not bind overnight there) +- Port: **18080** → 80 (inventory previously listed 10880; that port is off limits to project deploys) - URL: `http://100.64.0.9:18080` -- **Never** recreate or remap this container for overnight UAT. +- **Never** recreate or remap this container for project deploys. -Future overnight Capture deploys use a **separate** container name and an open **108XX** port other than Ty’s local port. +Future deploys use a **separate** container name and a free port in `10880`–`10889` +(other than `10880`), bound `0.0.0.0`. Do not put a host name in the product spec. diff --git a/deploy/RELEASE-PROCESS.md b/deploy/RELEASE-PROCESS.md index bb715e8..1424425 100644 --- a/deploy/RELEASE-PROCESS.md +++ b/deploy/RELEASE-PROCESS.md @@ -1,4 +1,13 @@ # Release -Build the Docker image. Run it on the host chosen for that test. -Milestone 3 adds the Woo service and a tagged UAT path. +The full runbook (topology, access, build/deploy, smoke checks, rollback) is `docs/DEPLOYMENT.md`. +This file records only what changes per release. + +Milestone 3: + +- Build happens on the UAT host (`ubudual5060`), never on the dev box. Source arrives by git + pull from Gitea into `~/slab-deploy`. +- Dev-test path: tagged container on port `10881` bound `0.0.0.0` (see `deploy/INVENTORY.md`), + replacing the M2 container. `SLAB-UAT-*` SKUs create Woo drafts only. +- `.env` is created on the host from `.env.example` (chmod 600); Woo Application Password and + inference keys live in app Settings, not in `.env`. diff --git a/docs/README.md b/docs/README.md index bf5e5db..67bd7e9 100644 --- a/docs/README.md +++ b/docs/README.md @@ -57,7 +57,8 @@ Technical detail for Woo sync, metadata, pricing, and inference is in `docs/capa ## Deploy reminders for this branch -- UAT overnight Docker: ubudual5060 `http://100.64.0.9:10881` -- Do not touch `:10880` (Ty Node/SvelteKit) +- Dev-test env Docker: ubudual5060 `http://192.168.1.202:10881` (LAN) · `http://100.64.0.9:10881` (Tailscale) +- Port block `10880`–`10889` is this project's; never bind `:10880` (Ty Node/SvelteKit) +- Dev-test env binds `0.0.0.0` — reachable from any machine on `192.168.1.0/24` - Store URL (`WOO_BASE_URL`) lives in compose / host `.env` - Woo application password and inference URL live in encrypted Settings, not in compose