From ddd38c3edc8b52d1e8d0d89b9ecc07998e07621a Mon Sep 17 00:00:00 2001 From: Mike Danese Date: Fri, 20 Nov 2015 13:29:18 -0800 Subject: [PATCH] fix command that is supposed to kill kube-proxy --- test/e2e/util.go | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/test/e2e/util.go b/test/e2e/util.go index 192247833e9..0cec9824cf3 100644 --- a/test/e2e/util.go +++ b/test/e2e/util.go @@ -2193,10 +2193,29 @@ func restartKubeProxy(host string) error { if !providerIs("gce", "gke", "aws") { return fmt.Errorf("unsupported provider: %s", testContext.Provider) } - _, _, code, err := SSH("sudo /etc/init.d/kube-proxy restart", host, testContext.Provider) + // kubelet will restart the kube-proxy since it's running in a static pod + _, _, code, err := SSH("sudo pkill kube-proxy", host, testContext.Provider) if err != nil || code != 0 { return fmt.Errorf("couldn't restart kube-proxy: %v (code %v)", err, code) } + // wait for kube-proxy to come back up + err = wait.Poll(5*time.Second, 60*time.Second, func() (bool, error) { + stdout, stderr, code, err := SSH("sudo /bin/sh -c 'pgrep kube-proxy | wc -l'", host, testContext.Provider) + if err != nil { + return false, err + } + if code != 0 { + return false, fmt.Errorf("failed to run command, exited %v: %v", code, stderr) + } + if stdout == "0\n" { + return false, nil + } + Logf("kube-proxy is back up.") + return true, nil + }) + if err != nil { + return fmt.Errorf("kube-proxy didn't recover: %v", err) + } return nil }