docs(context): freshen infra glossary (modules, tiers, new concepts) [ci skip]
Refresh CONTEXT.md against current repo + cluster reality (grill-with-docs): - Module taxonomy rewrite: drop fictional k8s_app/helm_app/postgres_app factory modules (never existed); name the real four (ingress_factory, nfs_volume, anubis_instance, setup_tls_secret) + the shared / Stack-local / flat distinction; flag vestigial modules/kubernetes/<app> dirs. - Rename "Ingress auth tier" -> "Ingress auth" (discrete modes, not tiers); reserve "tier" for State tier + Namespace tier only. - Add local-path entry (cluster default SC; node-local footgun warning). - Add concepts: Keel, Diun, CNPG/pg-cluster, MetalLB LB-IP split, Calico. - Add "policy" ambiguity flag (Kyverno vs Calico NetworkPolicy vs Vault/RBAC). - Fix node count 5 -> 7 (k8s-master + k8s-node1..6). Doc-sync (same commit per repo rules): - overview.md: replace fictional factory modules with the real shared modules + the flat/stack-local pattern. - .claude/CLAUDE.md: drop dead nfs-proxmox column from the storage decision table + stale cross-reference (vault migrated off it 2026-04-25). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
aa948be581
commit
52f5de905d
3 changed files with 60 additions and 27 deletions
|
|
@ -184,17 +184,17 @@ Kyverno policies automatically inject namespace labels, LimitRange, ResourceQuot
|
|||
| Path | Purpose |
|
||||
|------|---------|
|
||||
| `stacks/<service>/terragrunt.hcl` | Individual service configuration |
|
||||
| `modules/k8s_app/` | Reusable Kubernetes app module |
|
||||
| `modules/helm_app/` | Helm chart deployment module |
|
||||
| `modules/kubernetes/ingress_factory/` | Shared factory module: ingress + middleware chain + DNS + Uptime-Kuma monitor |
|
||||
| `modules/kubernetes/nfs_volume/` | Shared factory module: RWX NFS PV/PVC provisioning |
|
||||
| `base.hcl` | Global Terragrunt configuration |
|
||||
| `terraform.tfvars` | Global variables (git-ignored) |
|
||||
|
||||
### Terraform Organization
|
||||
|
||||
Each service lives in `stacks/<service>/` with its own Terragrunt configuration. Common patterns:
|
||||
- Helm deployments use `modules/helm_app/`
|
||||
- Custom manifests use `modules/k8s_app/`
|
||||
- Databases use dedicated modules (`modules/postgres_app/`, `modules/mysql_app/`)
|
||||
- Most Stacks are **flat** — resources declared directly in the Stack's `.tf` files
|
||||
- Larger/older Stacks factor their implementation into a **stack-local module** at `stacks/<service>/modules/<service>/`
|
||||
- Shared, reused logic lives in **factory modules** under `modules/kubernetes/` — `ingress_factory`, `nfs_volume`, `anubis_instance`, `setup_tls_secret`
|
||||
- Shared dependencies via `dependency` blocks in terragrunt.hcl
|
||||
|
||||
### Vault Paths
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue