updating to match everything in my homelab.

This commit is contained in:
2026-02-05 16:13:53 -05:00
parent f8787379c5
commit 80fb911e22
30 changed files with 3107 additions and 7 deletions

57
diagrams/gitops-flux.mmd Normal file
View File

@@ -0,0 +1,57 @@
```plaintext
%% GitOps Reconciliation Loop (ADR-0006)
%% Flowchart showing Flux CD GitOps workflow
flowchart TB
subgraph git["📂 Git Repositories"]
direction TB
homelab["homelab-k8s2<br/>(cluster config)"]
apps["Application Repos<br/>(argo, kubeflow, etc.)"]
end
subgraph flux["⚙️ Flux Controllers"]
direction TB
source["Source Controller<br/>📥 Fetches repos"]
kustomize["Kustomize Controller<br/>🔧 Applies manifests"]
helm["Helm Controller<br/>📦 Manages charts"]
notification["Notification Controller<br/>📢 Alerts"]
end
subgraph k8s["☸️ Kubernetes Cluster"]
direction TB
secrets["🔐 SOPS Secrets<br/>(Age decrypted)"]
resources["📋 Deployed Resources<br/>(Pods, Services, etc.)"]
drift["🔄 Drift Detection"]
end
subgraph notify["📱 Notifications"]
ntfy["ntfy<br/>(push alerts)"]
end
%% GitOps flow
homelab -->|"GitRepository CR"| source
apps -->|"GitRepository CR"| source
source -->|"Fetches every 5m"| kustomize
source -->|"Fetches charts"| helm
kustomize -->|"Decrypts with Age"| secrets
kustomize -->|"kubectl apply"| resources
helm -->|"helm upgrade"| resources
resources -->|"Actual state"| drift
drift -->|"Compares to Git"| kustomize
drift -->|"Auto-corrects"| resources
notification -->|"Success/failure"| ntfy
classDef repo fill:#f5a623,color:black
classDef controller fill:#4a90d9,color:white
classDef cluster fill:#50c878,color:white
classDef alert fill:#9b59b6,color:white
class homelab,apps repo
class source,kustomize,helm,notification controller
class secrets,resources,drift cluster
class ntfy alert
```