Skip to content

Commit 08b9b61

Browse files
authored
Nuke HCP, patch vs update and log (#1861)
* Nuke HCP, patch vs update and log * taking Tiger's suggestion to patch vs. update finalizer * log the finalizers being removed Signed-off-by: Wesley Hayutin <[email protected]> * remove finalizer w/ controllerutil one at a time Signed-off-by: Wesley Hayutin <[email protected]> * second spot to update w/ controllerutil Signed-off-by: Wesley Hayutin <[email protected]> --------- Signed-off-by: Wesley Hayutin <[email protected]>
1 parent c61fc92 commit 08b9b61

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

tests/e2e/lib/hcp/hcp.go

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import (
1717
"k8s.io/apimachinery/pkg/types"
1818
"k8s.io/apimachinery/pkg/util/wait"
1919
"sigs.k8s.io/controller-runtime/pkg/client"
20+
"sigs.k8s.io/controller-runtime/pkg/controller/controllerutil"
2021

2122
"github.com/openshift/oadp-operator/tests/e2e/lib"
2223
)
@@ -308,8 +309,15 @@ func (h *HCHandler) NukeHostedCluster() error {
308309
Namespace: h.HostedCluster.Namespace,
309310
}, hc)
310311
if err == nil && len(hc.GetFinalizers()) > 0 {
311-
log.Printf("\tNUKE: Removing finalizers from HostedCluster %s", hc.Name)
312-
hc.SetFinalizers([]string{})
312+
finalizers := hc.GetFinalizers()
313+
log.Printf("\tNUKE: HostedCluster %s has finalizers: %v", hc.Name, finalizers)
314+
315+
// Remove each finalizer found on the HostedCluster
316+
for _, finalizer := range finalizers {
317+
log.Printf("\tNUKE: Removing finalizer %s from HostedCluster %s", finalizer, hc.Name)
318+
controllerutil.RemoveFinalizer(hc, finalizer)
319+
}
320+
313321
if err := h.Client.Update(h.Ctx, hc); err != nil {
314322
return fmt.Errorf("\tNUKE: Error removing finalizers from HostedCluster %s: %v", hc.Name, err)
315323
}
@@ -338,8 +346,15 @@ func (h *HCHandler) NukeHostedCluster() error {
338346

339347
for _, item := range obj.Items {
340348
if len(item.GetFinalizers()) > 0 {
341-
log.Printf("\tNUKE: Removing finalizers from %s %s", rt.kind, item.GetName())
342-
item.SetFinalizers([]string{})
349+
finalizers := item.GetFinalizers()
350+
log.Printf("\tNUKE: %s %s has finalizers: %v", rt.kind, item.GetName(), finalizers)
351+
352+
// Remove each finalizer found on the resource
353+
for _, finalizer := range finalizers {
354+
log.Printf("\tNUKE: Removing finalizer %s from %s %s", finalizer, rt.kind, item.GetName())
355+
controllerutil.RemoveFinalizer(&item, finalizer)
356+
}
357+
343358
if err := h.Client.Update(h.Ctx, &item); err != nil {
344359
return fmt.Errorf("\tNUKE: Error removing finalizers from %s %s: %v", rt.kind, item.GetName(), err)
345360
}

0 commit comments

Comments
 (0)