Description
adapters/kubernetes/src/main.rs (189 lines) has a CRD schema and CLI scaffold but no operator logic. No watch loop, no Pod creation, no result collection.
Requirements
- Implement K8s operator pattern: watch for ClusterDonation CRD changes
- Create Pods in configured namespace when tasks are assigned
- Enforce resource limits (CPU, memory, GPU) per CRD spec
- Collect results from completed Pods
- Clean up Pods on completion/failure
- Handle common K8s failure modes (OOMKill, Eviction, ImagePullBackOff)
- Deploy via Helm chart or kustomize manifests
Success Criteria
Testing (Principle V)
- Deploy operator on real K8s cluster
- Apply ClusterDonation CRD → verify capacity registered
- Submit job → verify Pod created → verify result collected
- Test resource limit enforcement (Pod exceeding limits → OOMKill handled)
Description
adapters/kubernetes/src/main.rs(189 lines) has a CRD schema and CLI scaffold but no operator logic. No watch loop, no Pod creation, no result collection.Requirements
Success Criteria
Testing (Principle V)