@@ -31,13 +31,11 @@ import (
3131 "sigs.k8s.io/controller-runtime/pkg/client"
3232
3333 appsv1 "github.com/apecloud/kubeblocks/apis/apps/v1"
34- dpv1alpha1 "github.com/apecloud/kubeblocks/apis/dataprotection/v1alpha1"
3534 appsutil "github.com/apecloud/kubeblocks/controllers/apps/util"
3635 "github.com/apecloud/kubeblocks/pkg/constant"
3736 "github.com/apecloud/kubeblocks/pkg/controller/graph"
3837 "github.com/apecloud/kubeblocks/pkg/controller/model"
3938 intctrlutil "github.com/apecloud/kubeblocks/pkg/controllerutil"
40- dptypes "github.com/apecloud/kubeblocks/pkg/dataprotection/types"
4139)
4240
4341// clusterDeletionTransformer handles cluster deletion
@@ -86,21 +84,6 @@ func (t *clusterDeletionTransformer) Transform(ctx graph.TransformContext, dag *
8684 // then list all the others objects owned by this cluster in cache, and delete them all
8785 ml := getAppInstanceML (* cluster )
8886
89- toDeleteObjs := func (objs owningObjects ) []client.Object {
90- var delObjs []client.Object
91- for _ , obj := range objs {
92- if obj .GetObjectKind ().GroupVersionKind ().Kind == dptypes .BackupKind {
93- backupObj := obj .(* dpv1alpha1.Backup )
94- // retain backup for data protection even if the cluster is wiped out.
95- if backupObj .Spec .DeletionPolicy == dpv1alpha1 .BackupDeletionPolicyRetain {
96- continue
97- }
98- }
99- delObjs = append (delObjs , obj )
100- }
101- return delObjs
102- }
103-
10487 // add namespaced objects deletion vertex
10588 namespacedObjs , err := getOwningNamespacedObjects (transCtx .Context , transCtx .Client , cluster .Namespace , ml , toDeleteNamespacedKinds )
10689 if err != nil {
@@ -109,12 +92,10 @@ func (t *clusterDeletionTransformer) Transform(ctx graph.TransformContext, dag *
10992 return err
11093 }
11194 }
112- if cluster .Spec .TerminationPolicy != appsv1 .WipeOut {
113- if err = getFailedBackups (transCtx .Context , transCtx .Client , cluster .Namespace , ml , namespacedObjs ); err != nil {
114- return err
115- }
95+ delObjs := make ([]client.Object , 0 , len (namespacedObjs ))
96+ for _ , obj := range namespacedObjs {
97+ delObjs = append (delObjs , obj )
11698 }
117- delObjs := toDeleteObjs (namespacedObjs )
11899
119100 // add non-namespaced objects deletion vertex
120101 nonNamespacedObjs , err := getOwningNonNamespacedObjects (transCtx .Context , transCtx .Client , ml , toDeleteNonNamespacedKinds )
@@ -124,7 +105,9 @@ func (t *clusterDeletionTransformer) Transform(ctx graph.TransformContext, dag *
124105 return err
125106 }
126107 }
127- delObjs = append (delObjs , toDeleteObjs (nonNamespacedObjs )... )
108+ for _ , obj := range nonNamespacedObjs {
109+ delObjs = append (delObjs , obj )
110+ }
128111
129112 delKindMap := map [string ]sets.Empty {}
130113 for _ , o := range delObjs {
@@ -166,11 +149,7 @@ func kindsForDelete() ([]client.ObjectList, []client.ObjectList) {
166149}
167150
168151func kindsForWipeOut () ([]client.ObjectList , []client.ObjectList ) {
169- namespacedKinds , nonNamespacedKinds := kindsForDelete ()
170- namespacedKindsPlus := []client.ObjectList {
171- & dpv1alpha1.BackupList {},
172- }
173- return append (namespacedKinds , namespacedKindsPlus ... ), nonNamespacedKinds
152+ return kindsForDelete ()
174153}
175154
176155func deleteCompNShardingInOrder4Terminate (transCtx * clusterTransformContext , dag * graph.DAG ) (sets.Set [string ], error ) {
0 commit comments