When a CustomResourceDefinition (CRD) manifest is removed, ArgoCD by default stops managing it but does not delete it from the cluster.
Workaround:
Manual removal of the orphan CRs
Additional Details:
ArgoCD’s default behavior on CRD removal:
CRD manifest removed.
ArgoCD sync: ArgoCD notices the CRD is no longer in Git.
ArgoCD pruning: skips deletion for CRDs (to avoid data loss risk).
Result: CRD remains orphaned
We need a strategy to delete CRDs only when no CustomResources (CRs) exist, preventing broken dependencies.