From 451c7f28b2194a5a0a11b639bfbe06df0632d380 Mon Sep 17 00:00:00 2001 From: Paul Morie Date: Tue, 10 May 2016 09:32:03 -0400 Subject: [PATCH] Clearly identify errors killing pods in events and logs --- pkg/kubelet/kubelet.go | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/pkg/kubelet/kubelet.go b/pkg/kubelet/kubelet.go index 49884621646..6df28c56522 100644 --- a/pkg/kubelet/kubelet.go +++ b/pkg/kubelet/kubelet.go @@ -1789,14 +1789,13 @@ func (kl *Kubelet) syncPod(o syncPodOptions) error { kl.statusManager.SetPodStatus(pod, apiPodStatus) // Kill pod if it should not be running - if err := canRunPod(pod); err != nil || pod.DeletionTimestamp != nil || apiPodStatus.Phase == api.PodFailed { - if err := kl.killPod(pod, nil, podStatus, nil); err != nil { - // there was an error killing the pod, so we return that error directly - utilruntime.HandleError(err) - return err + if errOuter := canRunPod(pod); errOuter != nil || pod.DeletionTimestamp != nil || apiPodStatus.Phase == api.PodFailed { + if errInner := kl.killPod(pod, nil, podStatus, nil); errInner != nil { + errOuter = fmt.Errorf("error killing pod: %v", errInner) + utilruntime.HandleError(errOuter) } // there was no error killing the pod, but the pod cannot be run, so we return that err (if any) - return err + return errOuter } // Create Mirror Pod for Static Pod if it doesn't already exist