From f82d5c6bb2ad147475d2dc9c28636bee982efd52 Mon Sep 17 00:00:00 2001 From: Thomas Stromberg Date: Tue, 7 Jul 2020 15:10:05 -0700 Subject: [PATCH 1/3] Reduce apiserver health timeout from 8s to 5s --- pkg/minikube/bootstrapper/bsutil/kverify/api_server.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/minikube/bootstrapper/bsutil/kverify/api_server.go b/pkg/minikube/bootstrapper/bsutil/kverify/api_server.go index d98b069c7e6e..1ba9188e764d 100644 --- a/pkg/minikube/bootstrapper/bsutil/kverify/api_server.go +++ b/pkg/minikube/bootstrapper/bsutil/kverify/api_server.go @@ -205,7 +205,7 @@ func apiServerHealthz(hostname string, port int) (state.State, error) { return nil } - err = retry.Local(check, 8*time.Second) + err = retry.Local(check, 5*time.Second) return st, err } From 53ce804cffcf742e510ef45b52780f10a690e69a Mon Sep 17 00:00:00 2001 From: Thomas Stromberg Date: Tue, 7 Jul 2020 15:10:30 -0700 Subject: [PATCH 2/3] retry.Local should respect the maxTime argument --- pkg/util/retry/retry.go | 1 + 1 file changed, 1 insertion(+) diff --git a/pkg/util/retry/retry.go b/pkg/util/retry/retry.go index 8bdacf461096..cc2b53457580 100644 --- a/pkg/util/retry/retry.go +++ b/pkg/util/retry/retry.go @@ -36,6 +36,7 @@ func Local(callback func() error, maxTime time.Duration) error { b.InitialInterval = 250 * time.Millisecond b.RandomizationFactor = 0.25 b.Multiplier = 1.25 + b.MaxElapsedTime = maxTime return backoff.RetryNotify(callback, b, notify) } From 7df40752974092984976a36d1cc989900e65daab Mon Sep 17 00:00:00 2001 From: Thomas Stromberg Date: Tue, 7 Jul 2020 15:23:26 -0700 Subject: [PATCH 3/3] Don't propagate stopped as an error, so that 'delete' works on stopped none clusters --- pkg/minikube/bootstrapper/bsutil/kverify/api_server.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkg/minikube/bootstrapper/bsutil/kverify/api_server.go b/pkg/minikube/bootstrapper/bsutil/kverify/api_server.go index 1ba9188e764d..2fc1566bd144 100644 --- a/pkg/minikube/bootstrapper/bsutil/kverify/api_server.go +++ b/pkg/minikube/bootstrapper/bsutil/kverify/api_server.go @@ -206,6 +206,12 @@ func apiServerHealthz(hostname string, port int) (state.State, error) { } err = retry.Local(check, 5*time.Second) + + // Don't propagate 'Stopped' upwards as an error message, as clients may interpret the err + // as an inability to get status. We need it for retry.Local, however. + if st == state.Stopped { + return st, nil + } return st, err }