From d53cd653f5c8d57de0784cb5af9c63f558ba92f5 Mon Sep 17 00:00:00 2001 From: Shelley-BaoYue Date: Wed, 22 Feb 2023 10:38:17 +0800 Subject: fix error in delete pod Signed-off-by: Shelley-BaoYue --- cloud/pkg/edgecontroller/controller/upstream.go | 12 ++++++++---- edge/pkg/metamanager/client/pod.go | 7 ++++++- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/cloud/pkg/edgecontroller/controller/upstream.go b/cloud/pkg/edgecontroller/controller/upstream.go index 07a133741..88a71cb45 100644 --- a/cloud/pkg/edgecontroller/controller/upstream.go +++ b/cloud/pkg/edgecontroller/controller/upstream.go @@ -1090,15 +1090,19 @@ func (uc *UpstreamController) deletePod() { } } + var resMsg *model.Message err = uc.kubeClient.CoreV1().Pods(namespace).Delete(context.Background(), name, deleteOptions) if err != nil && !errors.IsNotFound(err) && !strings.Contains(err.Error(), "The object might have been deleted and then recreated") { klog.Warningf("Failed to delete pod, namespace: %s, name: %s, err: %v", namespace, name, err) - continue + resMsg = model.NewMessage(msg.GetID()). + FillBody(err). + BuildRouter(modules.EdgeControllerModuleName, constants.GroupResource, msg.GetResource(), model.ResponseOperation) + } else { + resMsg = model.NewMessage(msg.GetID()). + FillBody(common.MessageSuccessfulContent). + BuildRouter(modules.EdgeControllerModuleName, constants.GroupResource, msg.GetResource(), model.ResponseOperation) } - resMsg := model.NewMessage(msg.GetID()). - FillBody(common.MessageSuccessfulContent). - BuildRouter(modules.EdgeControllerModuleName, constants.GroupResource, msg.GetResource(), model.ResponseOperation) if err = uc.messageLayer.Response(*resMsg); err != nil { klog.Errorf("Message: %s process failure, response failed with error: %v", msg.GetID(), err) continue diff --git a/edge/pkg/metamanager/client/pod.go b/edge/pkg/metamanager/client/pod.go index 61ea60002..51fe24617 100644 --- a/edge/pkg/metamanager/client/pod.go +++ b/edge/pkg/metamanager/client/pod.go @@ -69,7 +69,12 @@ func (c *pods) Delete(name string, options metav1.DeleteOptions) error { return nil } - return err + err, ok = msg.Content.(error) + if ok { + return err + } + + return fmt.Errorf("delete pod failed, response content type unsupported") } func (c *pods) Get(name string) (*corev1.Pod, error) { -- cgit v1.2.3