mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-29 06:27:05 +00:00
Merge pull request #90254 from smarterclayton/flaky_test
test: IngressClass exclusion test races with admission cache
This commit is contained in:
commit
1aa2c99a27
@ -19,10 +19,12 @@ package network
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"strings"
|
"strings"
|
||||||
|
"time"
|
||||||
|
|
||||||
networkingv1beta1 "k8s.io/api/networking/v1beta1"
|
networkingv1beta1 "k8s.io/api/networking/v1beta1"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/util/intstr"
|
"k8s.io/apimachinery/pkg/util/intstr"
|
||||||
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
clientset "k8s.io/client-go/kubernetes"
|
clientset "k8s.io/client-go/kubernetes"
|
||||||
"k8s.io/kubernetes/test/e2e/framework"
|
"k8s.io/kubernetes/test/e2e/framework"
|
||||||
|
|
||||||
@ -73,14 +75,19 @@ var _ = SIGDescribe("IngressClass [Feature:Ingress]", func() {
|
|||||||
framework.ExpectNoError(err)
|
framework.ExpectNoError(err)
|
||||||
defer deleteIngressClass(cs, ingressClass2.Name)
|
defer deleteIngressClass(cs, ingressClass2.Name)
|
||||||
|
|
||||||
_, err = createBasicIngress(cs, f.Namespace.Name)
|
// the admission controller may take a few seconds to observe both ingress classes
|
||||||
if err == nil {
|
|
||||||
framework.Failf("Expected error creating Ingress")
|
|
||||||
}
|
|
||||||
|
|
||||||
expectedErr := "2 default IngressClasses were found, only 1 allowed"
|
expectedErr := "2 default IngressClasses were found, only 1 allowed"
|
||||||
if !strings.Contains(err.Error(), expectedErr) {
|
var lastErr error
|
||||||
framework.Failf("Expected error to contain %s, got %s", expectedErr, err.Error())
|
if err := wait.Poll(time.Second, time.Minute, func() (bool, error) {
|
||||||
|
defer cs.NetworkingV1beta1().Ingresses(f.Namespace.Name).Delete(context.TODO(), "ingress1", metav1.DeleteOptions{})
|
||||||
|
_, err := createBasicIngress(cs, f.Namespace.Name)
|
||||||
|
if err == nil {
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
lastErr = err
|
||||||
|
return strings.Contains(err.Error(), expectedErr), nil
|
||||||
|
}); err != nil {
|
||||||
|
framework.Failf("Expected error to contain %s, got %s", expectedErr, lastErr.Error())
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user