diff --git a/pkg/cloudprovider/providers/gce/gce.go b/pkg/cloudprovider/providers/gce/gce.go index b515c8ff67a..f2d0f2a2ab7 100644 --- a/pkg/cloudprovider/providers/gce/gce.go +++ b/pkg/cloudprovider/providers/gce/gce.go @@ -827,7 +827,13 @@ func newOauthClient(tokenSource oauth2.TokenSource) (*http.Client, error) { glog.Infof("Using existing Token Source %#v", tokenSource) } - if err := wait.PollImmediate(5*time.Second, 30*time.Second, func() (bool, error) { + backoff := wait.Backoff{ + // These values will add up to about a minute. See #56293 for background. + Duration: time.Second, + Factor: 1.4, + Steps: 10, + } + if err := wait.ExponentialBackoff(backoff, func() (bool, error) { if _, err := tokenSource.Token(); err != nil { glog.Errorf("error fetching initial token: %v", err) return false, nil