From e9461e0348c577329a3c596c9d63e74888eb079e Mon Sep 17 00:00:00 2001 From: Wen Zhou Date: Sat, 11 Nov 2023 09:51:15 +0100 Subject: [PATCH] fix(crd): do not set ownerreference on CRD (#725) - we covered the case when set component from Managed to Remvoe - this is to cover the case when set have component as Managed and delete DSC CR - so if we do not set at first it wont get deleted Signed-off-by: Wen Zhou --- pkg/deploy/deploy.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkg/deploy/deploy.go b/pkg/deploy/deploy.go index 44a63511fbe..672adb50c8a 100644 --- a/pkg/deploy/deploy.go +++ b/pkg/deploy/deploy.go @@ -257,8 +257,11 @@ func manageResource(ctx context.Context, cli client.Client, obj *unstructured.Un // Create the resource if it doesn't exist and component is enabled if apierrs.IsNotFound(err) { // Set the owner reference for garbage collection - if err = ctrl.SetControllerReference(owner, metav1.Object(obj), cli.Scheme()); err != nil { - return err + // Skip set on CRD, e.g we should not delete notebook CRD if we delete DSC instance + if found.GetKind() != "CustomResourceDefinition" { + if err = ctrl.SetControllerReference(owner, metav1.Object(obj), cli.Scheme()); err != nil { + return err + } } return cli.Create(ctx, obj)