/operator-audit¶
Run the full audit on a Kubernetes Operator repository:
- Validate every CRD YAML against operator-pattern best practices
- Lint every Go controller's reconcile function for anti-patterns
- Score the operator against OperatorHub Capability Levels (1-5)
- Output a markdown report with pass/fail per check and concrete next steps
Usage¶
/operator-audit
/operator-audit --operator-dir ./my-operator
/operator-audit --crd-dir ./config/crd --controller-dir ./controllers
Implementation¶
SKILL=engineering/kubernetes-operator/skills/kubernetes-operator
DIR="${OPERATOR_DIR:-.}"
echo "## CRD validation"
python "$SKILL/scripts/crd_validator.py" --crd "$DIR/config/crd" || true
echo ""
echo "## Reconcile lint"
python "$SKILL/scripts/reconcile_lint.py" --controller "$DIR/controllers" || python "$SKILL/scripts/reconcile_lint.py" --controller "$DIR/internal/controller" || true
echo ""
echo "## Capability audit"
python "$SKILL/scripts/operator_capability_audit.py" --operator-dir "$DIR"
Output¶
A markdown report with:
- CRD findings per file: FAIL / WARN / PASS for each check
- Reconcile findings: line-numbered anti-patterns
- Current capability level + concrete advancement steps
Pre-conditions¶
- Run from a Kubernetes Operator repository
- Go controllers expected at
controllers/orinternal/controller/ - CRDs expected at
config/crd/(kubebuilder layout) kubernetes-operatorskill installed
Post-conditions¶
- Markdown report streamed to terminal
- Exit code 0 if all PASS; 1 if any FAIL