From e19cadf9718d33e553d8bf831109743bb674710b Mon Sep 17 00:00:00 2001 From: Will Anderson Date: Wed, 25 Mar 2026 15:59:12 -0500 Subject: [PATCH] docs: sync infrastructure docs with actual running state MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix direnv path typo in AGENTS.md (servers/servers → servers) - Correct Prometheus/Alertmanager as internal-only (no public ingresses) - Add Alloy public URL (alloy.neuralplatform.ai) - Add external-secrets namespace to namespaces table - Add contexthub org to Gitea orgs list - Document Gitea SSH config (Host gitea → 192.168.68.77:30022) - Specify GPU model: GTX 1660 Ti 6GB - Add devpi to Legion README services table --- Agents.md | 26 ++++++++++++++++++++------ servers/legion/README.md | 3 ++- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/Agents.md b/Agents.md index b28e814..39dae05 100644 --- a/Agents.md +++ b/Agents.md @@ -26,7 +26,7 @@ Legion runs all production services: k3s, Postgres, Redis, Ollama (GPU), Docker set -a; source ~/Secrets/credentials/infrastructure.env; set +a # Or with direnv (auto-loads in legion/ directory): -cd ~/Development/infrastructure/servers/servers/legion/ +cd ~/Development/infrastructure/servers/legion/ # direnv auto-sources infrastructure.env # Friendly alias (after sourcing infrastructure.env): @@ -156,9 +156,9 @@ Push to main → Argo CD syncs within ~30 seconds. | Registry UI | https://docker.neuralplatform.ai | Docker registry browser | | Headscale VPN | https://vpn.neuralplatform.ai | Tailscale control plane (direct TLS, not CF-proxied) | | Grafana | https://grafana.neuralplatform.ai | Metrics + logs dashboards | -| Prometheus | https://prometheus.neuralplatform.ai | Metrics (kube-prometheus-stack) | -| Alertmanager | https://alertmanager.neuralplatform.ai | Alert routing → Slack | -| Alloy | — | OTLP ingest for Loki/Tempo (internal only) | +| Prometheus | — | Metrics (kube-prometheus-stack, internal only) | +| Alertmanager | — | Alert routing → Slack (internal only) | +| Alloy | https://alloy.neuralplatform.ai | OTLP ingest for Loki/Tempo | ### VPN (Headscale / Tailscale) @@ -168,9 +168,21 @@ Headscale runs at `vpn.neuralplatform.ai` (DNS-only, no CF proxy — required fo | Service | Port | Notes | |---------|------|-------| -| Gitea SSH | 30022 | `git@192.168.68.77:30022` | +| Gitea SSH | 30022 | `git@gitea:org/repo.git` (via `Host gitea` SSH config) | | Ollama API | 31434 | `http://192.168.68.77:31434` | +### Gitea SSH config (Mac `~/.ssh/config`) + +``` +Host gitea + HostName 192.168.68.77 + Port 30022 + User git + IdentityFile ~/.ssh/id_ed25519 +``` + +Use for git remotes: `git@gitea:will/infrastructure.git`. Works on LAN and over Headscale VPN. + --- ## Access Patterns @@ -234,10 +246,11 @@ ssh legion "curl -s -H 'Authorization: token $TOKEN' http://10.43.1.53:3000/api/ **GitHub** (`github.com/harmonic-framework`) — open-source, CI runners, public-facing -**Gitea** (`git.neuralplatform.ai`) — private/infra, three orgs: +**Gitea** (`git.neuralplatform.ai`) — private/infra, four orgs: - `will` — personal infra (`will/infrastructure`) - `neural-platform` — platform projects (`neural-platform/neuron`, `neural-platform/prism`) - `harmonic-framework` — org site/assets (`harmonic-framework/harmonic-framework.com`) +- `contexthub` — archived reference repos (ContextHub, shut down 2021) Runner labels: `self-hosted,linux,x64,legion` @@ -260,6 +273,7 @@ Runner labels: `self-hosted,linux,x64,legion` | `vault` | HashiCorp Vault | | `argocd` | Argo CD | | `cert-manager` | cert-manager (Let's Encrypt via HTTP-01) | +| `external-secrets` | External Secrets Operator — syncs Vault secrets → k8s Secrets | --- diff --git a/servers/legion/README.md b/servers/legion/README.md index 7d1b25a..60a8b2f 100644 --- a/servers/legion/README.md +++ b/servers/legion/README.md @@ -16,6 +16,7 @@ Ubuntu 24.04 home server running k3s. Hosts all personal and platform infrastruc | Gitea | https://git.neuralplatform.ai | Self-hosted Git — all repos live here | | GitHub Actions Runner | — | Runs CI jobs from harmonic-framework org | | Verdaccio | https://npm.neuralplatform.ai | Private npm registry | +| devpi | https://pypi.neuralplatform.ai | Private PyPI registry | ### Platform | Service | URL | What it does | @@ -90,7 +91,7 @@ ddclient keeps the `dot.nook.family` A record updated if the home IP changes. ## GPU -Legion has an NVIDIA GPU. k3s is configured to use it as the default container runtime. Ollama uses it for local inference. +Legion has an NVIDIA GeForce GTX 1660 Ti (6GB VRAM). k3s is configured to use it as the default container runtime. Ollama uses it for local inference. ```bash kubectl describe node legion | grep nvidia.com/gpu