@@ -18,7 +18,6 @@ import (
1818
1919 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2020 "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
21- "k8s.io/apimachinery/pkg/types"
2221
2322 "github.com/kro-run/kro/api/v1alpha1"
2423)
@@ -42,36 +41,15 @@ func HasResourceGraphDefinitionFinalizer(obj metav1.Object) bool {
4241 return containsString (obj .GetFinalizers (), kroFinalizer )
4342}
4443
45- // SetInstanceFinalizer adds an instance-specific finalizer to the object.
46- func SetInstanceFinalizer (obj metav1.Object , uid types.UID ) {
47- finalizerName := getInstanceFinalizerName (uid )
48- if ! HasInstanceFinalizer (obj , uid ) {
49- obj .SetFinalizers (append (obj .GetFinalizers (), finalizerName ))
50- }
51- }
52-
53- // RemoveInstanceFinalizer removes an instance-specific finalizer from the object.
54- func RemoveInstanceFinalizer (obj metav1.Object , uid types.UID ) {
55- finalizerName := getInstanceFinalizerName (uid )
56- obj .SetFinalizers (removeString (obj .GetFinalizers (), finalizerName ))
57- }
58-
59- // HasInstanceFinalizer checks if the object has an instance-specific finalizer.
60- func HasInstanceFinalizer (obj metav1.Object , uid types.UID ) bool {
61- finalizerName := getInstanceFinalizerName (uid )
62- return containsString (obj .GetFinalizers (), finalizerName )
63- }
64-
6544// SetInstanceFinalizerUnstructured adds an instance-specific finalizer to an unstructured object.
66- func SetInstanceFinalizerUnstructured (obj * unstructured.Unstructured , uid types.UID ) error {
67- finalizerName := getInstanceFinalizerName (uid )
45+ func SetInstanceFinalizerUnstructured (obj * unstructured.Unstructured ) error {
6846 finalizers , found , err := unstructured .NestedStringSlice (obj .Object , "metadata" , "finalizers" )
6947 if err != nil {
7048 return fmt .Errorf ("error getting finalizers: %w" , err )
7149 }
7250
73- if ! found || ! containsString (finalizers , finalizerName ) {
74- finalizers = append (finalizers , finalizerName )
51+ if ! found || ! containsString (finalizers , kroFinalizer ) {
52+ finalizers = append (finalizers , kroFinalizer )
7553 if err := unstructured .SetNestedStringSlice (obj .Object , finalizers , "metadata" , "finalizers" ); err != nil {
7654 return fmt .Errorf ("error setting finalizers: %w" , err )
7755 }
@@ -80,15 +58,14 @@ func SetInstanceFinalizerUnstructured(obj *unstructured.Unstructured, uid types.
8058}
8159
8260// RemoveInstanceFinalizerUnstructured removes an instance-specific finalizer from an unstructured object.
83- func RemoveInstanceFinalizerUnstructured (obj * unstructured.Unstructured , uid types.UID ) error {
84- finalizerName := getInstanceFinalizerName (uid )
61+ func RemoveInstanceFinalizerUnstructured (obj * unstructured.Unstructured ) error {
8562 finalizers , found , err := unstructured .NestedStringSlice (obj .Object , "metadata" , "finalizers" )
8663 if err != nil {
8764 return fmt .Errorf ("error getting finalizers: %w" , err )
8865 }
8966
9067 if found {
91- finalizers = removeString (finalizers , finalizerName )
68+ finalizers = removeString (finalizers , kroFinalizer )
9269 if err := unstructured .SetNestedStringSlice (obj .Object , finalizers , "metadata" , "finalizers" ); err != nil {
9370 return fmt .Errorf ("error setting finalizers: %w" , err )
9471 }
@@ -97,8 +74,7 @@ func RemoveInstanceFinalizerUnstructured(obj *unstructured.Unstructured, uid typ
9774}
9875
9976// HasInstanceFinalizerUnstructured checks if an unstructured object has an instance-specific finalizer.
100- func HasInstanceFinalizerUnstructured (obj * unstructured.Unstructured , uid types.UID ) (bool , error ) {
101- finalizerName := getInstanceFinalizerName (uid )
77+ func HasInstanceFinalizerUnstructured (obj * unstructured.Unstructured ) (bool , error ) {
10278 finalizers , found , err := unstructured .NestedStringSlice (obj .Object , "metadata" , "finalizers" )
10379 if err != nil {
10480 return false , fmt .Errorf ("error getting finalizers: %w" , err )
@@ -108,15 +84,11 @@ func HasInstanceFinalizerUnstructured(obj *unstructured.Unstructured, uid types.
10884 return false , nil
10985 }
11086
111- return containsString (finalizers , finalizerName ), nil
87+ return containsString (finalizers , kroFinalizer ), nil
11288}
11389
11490// Helper functions
11591
116- func getInstanceFinalizerName (uid types.UID ) string {
117- return fmt .Sprintf ("%s.%s" , string (uid ), kroFinalizer )
118- }
119-
12092func containsString (slice []string , s string ) bool {
12193 for _ , item := range slice {
12294 if item == s {
0 commit comments