Break/verify/fix training scenarios for the mymh.dev homelab.
| .gitignore | ||
| LICENSE.md | ||
| README.md | ||
chaos-scripts — Break/Verify/Fix Training Scenarios
Break/verify/fix training scenarios for the mymh.dev homelab — per ADR-002 in homelab-docs. Full project context, decisions, and runbooks live in homelab-docs; this repo's own docs cover only how to use its tooling.
Repository structure
chaos-scripts/
├─ LICENSE.md
└─ README.md # This file
Further structure (scenario scripts + documented solutions, .gitignore) lands once work starts here, per ADR-002 — "repos are created when they get content, not upfront."
Rules for this repo
- No file — tracked or untracked — ever contains a real IP, MAC address, hostname, or credential. Environment-specific values are runtime parameters (env vars/CLI args), never persisted to disk in the repo.
- Each script injects exactly one fault; diagnosis happens with
kubectlonly, then gets compared against a documented solution checked in alongside it. - Scenarios only ever run in disposable environments — a dedicated
trainingvCluster or local kind/minikube — never against a production vCluster. - Scenario categories: failing pods (bad image tags, missing ConfigMap/Secret, OOMKill, bad liveness probes, CrashLoopBackOff), DNS/networking (CoreDNS, Service selectors, NetworkPolicy, Traefik Ingress), storage (PVC Pending, mount errors, full-disk, StatefulSet/PV binding), upgrades/rollbacks (Talos rolling upgrades,
helm rollback, ArgoCD revert drills — doubles as MTTR data for DORA). - Later stage: replace hand-written scripts with a CNCF chaos tool (e.g. Chaos Mesh) once the cluster is stable — not before.
Out of scope
- On-prem machine provisioning (
homelab-iac). - Talos machine configs and cluster bootstrap (
homelab-cluster-config). - ArgoCD app-of-apps and application manifests (
homelab-gitops). - Decision records and runbooks (
homelab-docs).
Documentation
- Decisions: ADRs in
homelab-docs - Operational procedures: runbooks in
homelab-docs - Progress: roadmap/journal in
homelab-docs
License
Licensed under the MIT License — free to use, share, and adapt with attribution (keep the copyright notice).