@@ -39,7 +39,7 @@ type OnKubectlRunFunc func(command string) (CleanupFunc, error)
39
39
type Kubectl interface {
40
40
ApplyResource (ctx context.Context , config * rest.Config , obj * unstructured.Unstructured , namespace string , dryRunStrategy cmdutil.DryRunStrategy , force , validate bool ) (string , error )
41
41
ConvertToVersion (obj * unstructured.Unstructured , group , version string ) (* unstructured.Unstructured , error )
42
- DeleteResource (ctx context.Context , config * rest.Config , gvk schema.GroupVersionKind , name string , namespace string , forceDelete bool ) error
42
+ DeleteResource (ctx context.Context , config * rest.Config , gvk schema.GroupVersionKind , name string , namespace string , deleteOptions metav1. DeleteOptions ) error
43
43
GetResource (ctx context.Context , config * rest.Config , gvk schema.GroupVersionKind , name string , namespace string ) (* unstructured.Unstructured , error )
44
44
PatchResource (ctx context.Context , config * rest.Config , gvk schema.GroupVersionKind , name string , namespace string , patchType types.PatchType , patchBytes []byte , subresources ... string ) (* unstructured.Unstructured , error )
45
45
GetAPIResources (config * rest.Config , resourceFilter ResourceFilter ) ([]APIResourceInfo , error )
@@ -187,7 +187,7 @@ func (k *KubectlCmd) PatchResource(ctx context.Context, config *rest.Config, gvk
187
187
}
188
188
189
189
// DeleteResource deletes resource
190
- func (k * KubectlCmd ) DeleteResource (ctx context.Context , config * rest.Config , gvk schema.GroupVersionKind , name string , namespace string , forceDelete bool ) error {
190
+ func (k * KubectlCmd ) DeleteResource (ctx context.Context , config * rest.Config , gvk schema.GroupVersionKind , name string , namespace string , deleteOptions metav1. DeleteOptions ) error {
191
191
span := k .Tracer .StartSpan ("DeleteResource" )
192
192
span .SetBaggageItem ("kind" , gvk .Kind )
193
193
span .SetBaggageItem ("name" , name )
@@ -206,14 +206,11 @@ func (k *KubectlCmd) DeleteResource(ctx context.Context, config *rest.Config, gv
206
206
}
207
207
resource := gvk .GroupVersion ().WithResource (apiResource .Name )
208
208
resourceIf := ToResourceInterface (dynamicIf , apiResource , resource , namespace )
209
- propagationPolicy := metav1 .DeletePropagationForeground
210
- deleteOptions := metav1.DeleteOptions {PropagationPolicy : & propagationPolicy }
211
- if forceDelete {
212
- propagationPolicy = metav1 .DeletePropagationBackground
213
- zeroGracePeriod := int64 (0 )
214
- deleteOptions .GracePeriodSeconds = & zeroGracePeriod
215
- }
216
209
210
+ if deleteOptions .PropagationPolicy == nil {
211
+ propagationPolicy := metav1 .DeletePropagationForeground
212
+ deleteOptions = metav1.DeleteOptions {PropagationPolicy : & propagationPolicy }
213
+ }
217
214
return resourceIf .Delete (ctx , name , deleteOptions )
218
215
}
219
216
0 commit comments