From 9b41f7635deb6cf11beb02bbce530435640cd6a2 Mon Sep 17 00:00:00 2001 From: dougbtv Date: Thu, 21 Feb 2019 14:33:03 -0500 Subject: [PATCH] Allows cmdDel to finish if netns doesn't exist, omits deferred netns.Close() in such a case --- multus/multus.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/multus/multus.go b/multus/multus.go index 8ad9877a5..a710c5f8a 100644 --- a/multus/multus.go +++ b/multus/multus.go @@ -402,11 +402,15 @@ func cmdDel(args *skel.CmdArgs, exec invoke.Exec, kubeClient k8s.KubeClient) err // https://github.com/kubernetes/kubernetes/issues/43014#issuecomment-287164444 _, ok := err.(ns.NSPathNotExistErr) if ok { - return nil + logging.Debugf("cmdDel: WARNING netns may not exist, netns: %s, err: %s", netns, err) + } else { + return fmt.Errorf("failed to open netns %q: %v", netns, err) } - return fmt.Errorf("failed to open netns %q: %v", netns, err) } - defer netns.Close() + + if netns != nil { + defer netns.Close() + } k8sArgs, err := k8s.GetK8sArgs(args) if err != nil {