Upgrade walkthrough¶
Upgrade MKurator operator, CRDs, and webhooks without losing MQ object state.
Full runbook: UPGRADE.md. This page summarizes the happy path.
Before you upgrade¶
- Read release notes for the target version on GitHub Releases.
- Back up custom resources:
kubectl get queue,topic,channel,qmc,car,auth -A -o yaml > mkurator-crs.yaml - Note your current chart/app version:
helm list -Aor deployment image tag.
Helm upgrade¶
helm upgrade mkurator oci://ghcr.io/platformrelay/mkurator --version <X.Y.Z> -n mkurator-system
Or upgrade from a release tarball:
helm upgrade mkurator dist/mkurator-<version>.tgz -n mkurator-system
CRD and webhook changes¶
When CRD schemas change between releases:
- Apply updated CRDs from the release (
install-crds.yamlor chart CRDs). - Wait for the operator deployment to roll out.
- Confirm validating webhook pods are ready (cert-manager or bundled certs).
Details: UPGRADE.md — CRDs and webhooks.
Post-upgrade checks¶
kubectl get deploy -n mkurator-system
kubectl get qmc,queue -A
kubectl logs deploy/mkurator-controller-manager -n mkurator-system --tail=50
Existing MQ objects remain on the queue manager; MKurator reconciles desired state after upgrade.
Rollback¶
Helm rollback or re-install the previous release image/chart. See UPGRADE.md for webhook cert and CRD compatibility notes.