Kubernetes controller for BlanketOps Environments.
- This project wires Kubernetes CRDs to the
blanketops/environmentsengine. - The controller is intentionally thin — all business logic lives in the engine module.
The system is split into two parts:
- Domain logic
- Resolution layer
- Mediators
- Infra adapters
- Secrets management
- Contracts
🎛 Controller (this project)
- Kubernetes reconcilers
- Watches CRDs
- Calls engine mediators
- Updates status
The controller orchestrates reconciliation; business rules live in the engine module.
The controller reconciles:
- Build
- Deployment
- Environment
- Package
- ServiceUnit
- GitRepository
- GitHubEvent
- Route (registered, but errors on every CR — no domain handler is registered for its GVK yet)
- Domain (registered, but Reconcile is a no-op stub)
- Thin controller
- Engine-driven architecture
- Explicit domain contracts
- Resolution-based orchestration
Infrastructure adapters isolated from Kubernetes layer
Apache 2.0