kubernetes-operator
Installation
SKILL.md
Controller-Runtime Patterns
Reconciler Structure
- Implement
reconcile.Reconcilerinterface - Always accept and propagate
context.Context - Return
ctrl.Result{}with appropriate requeue:Result{}— success, no requeueResult{RequeueAfter: 30 * time.Second}— delayed retryResult{Requeue: true}— immediate retry
- Never return an error for expected/permanent failures — log and return
Result{} - Return errors only for transient failures that should be retried
CRD Design
- Group:
<domain>.example.com/v1alpha1→v1beta1→v1 - Status subresource always enabled
- Use status conditions following
metav1.Conditionpattern:Type,Status(True/False/Unknown),Reason,Message,LastTransitionTime
- Printer columns for
kubectl getoutput - Validation via CEL expressions in CRD markers