@@ -30,9 +30,9 @@ import (
3030 corev1 "k8s.io/api/core/v1"
3131 rbacv1 "k8s.io/api/rbac/v1"
3232 "k8s.io/apimachinery/pkg/api/equality"
33- apierrors "k8s.io/apimachinery/pkg/api/errors"
3433 "k8s.io/apimachinery/pkg/util/sets"
3534 "k8s.io/client-go/tools/record"
35+ "k8s.io/klog/v2"
3636 "sigs.k8s.io/controller-runtime/pkg/client"
3737 "sigs.k8s.io/controller-runtime/pkg/controller/controllerutil"
3838
@@ -265,8 +265,8 @@ func (b *PlanBuilder) defaultWalkFunc(v graph.Vertex) error {
265265
266266func (b * PlanBuilder ) createObject (ctx context.Context , vertex * model.ObjectVertex ) error {
267267 err := b .cli .Create (ctx , vertex .Obj , clientOption (vertex ))
268- if err != nil && ! apierrors . IsAlreadyExists ( err ) {
269- return err
268+ if err != nil {
269+ return fmt . Errorf ( "create %T %s failed: %w" , vertex . Obj , klog . KObj ( vertex . Obj ), err )
270270 }
271271 b .emitEvent (vertex .Obj , "SuccessfulCreate" , model .CREATE )
272272 return nil
@@ -282,8 +282,8 @@ func (b *PlanBuilder) updateObject(ctx context.Context, vertex *model.ObjectVert
282282 err = b .cli .Update (ctx , vertex .Obj , clientOption (vertex ))
283283 reason = "SuccessfulUpdate"
284284 }
285- if err != nil && ! apierrors . IsNotFound ( err ) {
286- return err
285+ if err != nil {
286+ return fmt . Errorf ( "update %T %s failed: %w" , vertex . Obj , klog . KObj ( vertex . Obj ), err )
287287 }
288288 b .emitEvent (vertex .Obj , reason , model .UPDATE )
289289 return nil
@@ -300,8 +300,8 @@ func (b *PlanBuilder) patchObject(ctx context.Context, vertex *model.ObjectVerte
300300 err = b .cli .Patch (ctx , vertex .Obj , patch , clientOption (vertex ))
301301 reason = "SuccessfulPatch"
302302 }
303- if err != nil && ! apierrors . IsNotFound ( err ) {
304- return err
303+ if err != nil {
304+ return fmt . Errorf ( "patch %T %s failed: %w" , vertex . Obj , klog . KObj ( vertex . Obj ), err )
305305 }
306306 b .emitEvent (vertex .Obj , reason , model .PATCH )
307307 return nil
@@ -314,15 +314,14 @@ func (b *PlanBuilder) deleteObject(ctx context.Context, vertex *model.ObjectVert
314314 }
315315 if len (finalizer ) > 0 && controllerutil .RemoveFinalizer (vertex .Obj , finalizer ) {
316316 err := b .cli .Update (ctx , vertex .Obj , clientOption (vertex ))
317- if err != nil && ! apierrors .IsNotFound (err ) {
318- b .transCtx .logger .Error (err , fmt .Sprintf ("delete %T error: %s" , vertex .Obj , vertex .Obj .GetName ()))
319- return err
317+ if err != nil {
318+ return fmt .Errorf ("delete %T %s failed: %w" , vertex .Obj , klog .KObj (vertex .Obj ), err )
320319 }
321320 }
322321 if ! model .IsObjectDeleting (vertex .Obj ) {
323322 err := b .cli .Delete (ctx , vertex .Obj , clientOption (vertex ))
324- if err != nil && ! apierrors . IsNotFound ( err ) {
325- return err
323+ if err != nil {
324+ return fmt . Errorf ( "delete %T %s failed: %w" , vertex . Obj , klog . KObj ( vertex . Obj ), err )
326325 }
327326 b .emitEvent (vertex .Obj , "SuccessfulDelete" , model .DELETE )
328327 }
@@ -331,7 +330,7 @@ func (b *PlanBuilder) deleteObject(ctx context.Context, vertex *model.ObjectVert
331330
332331func (b * PlanBuilder ) statusObject (ctx context.Context , vertex * model.ObjectVertex ) error {
333332 if err := b .cli .Status ().Update (ctx , vertex .Obj , clientOption (vertex )); err != nil {
334- return err
333+ return fmt . Errorf ( "status %T %s failed: %w" , vertex . Obj , klog . KObj ( vertex . Obj ), err )
335334 }
336335 return nil
337336}
0 commit comments