diff options
| author | KubeEdge Bot <48982446+kubeedge-bot@users.noreply.github.com> | 2023-07-27 10:26:51 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-07-27 10:26:51 +0800 |
| commit | bc478b017240b02391cb83c8ee7905662cb1a1cb (patch) | |
| tree | 09d271187b16af1dbd87f810d9d68e704dec94a4 | |
| parent | Merge pull request #4874 from Shelley-BaoYue/automated-cherry-pick-of-#4814-u... (diff) | |
| parent | fix error in delete pod (diff) | |
| download | kubeedge-bc478b017240b02391cb83c8ee7905662cb1a1cb.tar.gz | |
Merge pull request #4877 from Shelley-BaoYue/automated-cherry-pick-of-#4612-upstream-release-1.14
Automated cherry pick of #4612: fix error in delete pod
| -rw-r--r-- | cloud/pkg/edgecontroller/controller/upstream.go | 12 | ||||
| -rw-r--r-- | 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 338117bcc..8e38363a8 100644 --- a/cloud/pkg/edgecontroller/controller/upstream.go +++ b/cloud/pkg/edgecontroller/controller/upstream.go @@ -1084,15 +1084,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 6be8acacd..f0b3806eb 100644 --- a/edge/pkg/metamanager/client/pod.go +++ b/edge/pkg/metamanager/client/pod.go @@ -70,7 +70,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) { |
