From 0fe33b3c40cb2dee247a8f2db098d49cfcbafd73 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Tue, 7 Jul 2026 16:42:47 +0300 Subject: docs: move f3s/k8s deployment details out to homelab skill Remove all f3s/k3s/cluster-specific deployment content from README.md, AGENTS.md, and ychat/DOCKER.md. The DB-backed build's deployment status, live URL, image tag, PVC, Helm chart, and ArgoCD app details now live in the private homelab skill's references/ychat.md sub-reference instead of this public repo. - README.md: drop the 'Deploying to the f3s k3s cluster' section and the 'Deployed to f3s' table note; genericize the emptyDir log note. - AGENTS.md: drop the explicit f3s skill name from the deployment section; keep only a generic out-of-scope pointer to the homelab skill. - ychat/DOCKER.md: remove the 'still running live on the f3s k3s cluster' History mention, the 'Not yet deployed to f3s' block, and the entire 'Deploying to the f3s k3s cluster' section. --- AGENTS.md | 13 +++++-------- README.md | 19 +++---------------- ychat/DOCKER.md | 18 ++---------------- 3 files changed, 10 insertions(+), 40 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 739d2a0..269e525 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -19,11 +19,8 @@ steps, follow [README.md](README.md) and the per-subproject `DOCKER.md` / ## Deployment (homelab-only, not in this repo) -Deploying ychat to the f3s homelab k3s cluster (private registry push, Helm -chart, ArgoCD Application, PVC for `/app/data`) is **homelab-specific and -deliberately not documented in this public repo**. - -If you are running with the private `f3s` Amp skill available, its -`references/ychat.md` reference has the full deployment runbook (image -build/push, Helm chart path, ArgoCD app, storage/PVC notes). Load the `f3s` -skill for those details. Without that skill, treat deployment as out of scope. +Deploying ychat to a homelab cluster (private registry push, Helm chart, +ArgoCD Application, PVC for `/app/data`) is **homelab-specific and out of +scope for this public repo**. The full deployment runbook lives in the +private homelab skill (its `references/ychat.md`). Load that skill for those +details; without it, treat deployment as out of scope. diff --git a/README.md b/README.md index 16b949a..a981058 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ are kept here as historical/revival code. | Subproject | What it is | Status | |------------|------------|--------| -| [`./ychat`](ychat/) | An HTTP-based web chat server (browsers are the clients; CSS/HTML/JS only). | **Revived, builds in Docker with a mandatory embedded-SQLite backend** (real, persistent registered accounts) — see [`ychat/DOCKER.md`](ychat/DOCKER.md). **Deployed to f3s** (`https://ychat.f3s.lan.buetow.org/`) with a persistent volume backing `/app/data`, image tag `67babb2`. | +| [`./ychat`](ychat/) | An HTTP-based web chat server (browsers are the clients; CSS/HTML/JS only). | **Revived, builds in Docker with a mandatory embedded-SQLite backend** (real, persistent registered accounts) — see [`ychat/DOCKER.md`](ychat/DOCKER.md). | | [`./yhttpd`](yhttpd/) | A tiny standalone http server derived from ychat's socket/threading engine. | Builds and serves reliably in Docker (verified under concurrent load) — not deployed. See [`./yhttpd/DOCKER.md`](yhttpd/DOCKER.md). | | [`./ycurses`](ycurses/) | A curses front-end experiment. | Builds and runs in Docker (a demo, not a service, so nothing to deploy) — see [`./ycurses/BUILD.md`](ycurses/BUILD.md). | @@ -101,8 +101,8 @@ podman rm -f ychat in-memory, and unregistered `chat.enableguest=true` guest chatters are wiped on restart same as before — only the accounts table persists. - **Logs** go to `/app/log/` inside the container (`access_log`, `system_log`, - `rooms/`). They're an `emptyDir` in k8s and a container-local dir - locally, so they don't persist after `rm`. + `rooms/`). They're a container-local dir locally, so they don't + persist after `rm`. - **Configuration** is `ychat/etc/ychat.conf`, baked into the image at `/app/etc/ychat.conf`. You can override any config key at runtime with `-o ` (the image already does this for @@ -116,19 +116,6 @@ podman rm -f ychat --- -## Deploying to the f3s k3s cluster - -Deploying ychat to a homelab k3s cluster (image build/push, Helm chart, -ArgoCD Application, PVC requirements) is homelab-specific and **not** -documented in this public repo. **The DB-backed build described in this README is now -deployed** — the live LAN URL (**https://ychat.f3s.lan.buetow.org/**) serves -image tag `67babb2` with a persistent volume (`ychat-data-pvc`, hostPath-backed -NFS share) mounted at `/app/data`, so registered accounts survive pod -restarts. Chart/manifests live in the `conf` repo under -`f3s/ychat/helm-chart/`. - ---- - ## License GPL-2.0 (see [`./ychat/COPYING`](ychat/COPYING)). Source: diff --git a/ychat/DOCKER.md b/ychat/DOCKER.md index cff284c..5a06ac4 100644 --- a/ychat/DOCKER.md +++ b/ychat/DOCKER.md @@ -144,9 +144,8 @@ cache); the input frame shows Colors/Options/Help/Users/Admin/Logout; both ## History Earlier in this revival there were briefly two build modes: an in-memory, -no-database "Mode A" guest chat (the original, minimal revival, and what's -still running live on the f3s k3s cluster as of this writing) and an opt-in -`--enable-sqlite` "Mode B" alongside it (`Dockerfile.sqlite`, +no-database "Mode A" guest chat (the original, minimal revival) and an +opt-in `--enable-sqlite` "Mode B" alongside it (`Dockerfile.sqlite`, `DOCKER-SQLITE.md`). A later task removed Mode A entirely: `DATABASE` (and therefore SQLite) is now mandatory, there's only one `Dockerfile`, and the build-aware UI toggles that existed to make Mode A's lack of a database less @@ -156,19 +155,6 @@ options UI is always functional now. Unregistered guest chatting itself was **not** removed — `chat.enableguest` is a runtime config option, not a compile flag, and stayed as-is. -**Not yet deployed to f3s**: the live cluster -(`https://ychat.f3s.lan.buetow.org/`) still runs the old no-DB image. Rolling -this DB-backed build out is a separate, deliberate decision (needs a -persistent volume for `/app/data`, updated Helm chart, etc.) — not done as -part of removing the no-DB build option from the codebase. - -## Deploying to the f3s k3s cluster - -Homelab-specific deployment (image push to the private registry, Helm chart, -ArgoCD Application, PVC for `/app/data`) is homelab-specific and **not** -documented in this public repo. It is **not yet deployed**: the live cluster -(`https://ychat.f3s.lan.buetow.org/`) still runs the old no-DB image. - ## Optional follow-ups (not in scope for this task) - Port to a modern toolchain (`hash_map`→`unordered_map`, fix implicit -- cgit v1.2.3