mirror of https://github.com/k3s-io/k3s
test/e2e: fix flake in kubelet expose should create services for rc
Add a loop to retry the request to account for the TLS Timeout and API credential error responses outlined by the flakes in #29227. Fixes #29227 Signed-off-by: Jess Frazelle <me@jessfraz.com>pull/6/head
parent
4f4c50223e
commit
c2cf99c165
|
@ -652,10 +652,15 @@ var _ = framework.KubeDescribe("Kubectl client", func() {
|
|||
err := wait.Poll(framework.Poll, timeout, func() (bool, error) {
|
||||
endpoints, err := c.Endpoints(ns).Get(name)
|
||||
if err != nil {
|
||||
if apierrs.IsNotFound(err) {
|
||||
// log the real error
|
||||
framework.Logf("Get endpoints failed (interval %v): %v", framework.Poll, err)
|
||||
|
||||
// if the error is API not found or could not find default credentials or TLS handshake timeout, try again
|
||||
if apierrs.IsNotFound(err) ||
|
||||
apierrs.IsUnauthorized(err) ||
|
||||
apierrs.IsServerTimeout(err) {
|
||||
err = nil
|
||||
}
|
||||
framework.Logf("Get endpoints failed (interval %v): %v", framework.Poll, err)
|
||||
return false, err
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue