Skip source IP preservation checks for Proxy-type load balancers

To be revisited
This commit is contained in:
Dan Winship 2024-05-08 10:25:49 -04:00
parent 79394a1cbd
commit 85d5b4bd4a

View File

@ -927,11 +927,6 @@ var _ = common.SIGDescribe("LoadBalancers", feature.LoadBalancer, func() {
})
var _ = common.SIGDescribe("LoadBalancers ExternalTrafficPolicy: Local", feature.LoadBalancer, framework.WithSlow(), func() {
// FIXME: What are the expected semantics of requesting an
// "ExternalTrafficPolicy: Local" service from a cloud provider that does not
// support that? What are the expected semantics of "ExternalTrafficPolicy: Local"
// on `IPMode: Proxy`-type LoadBalancers?
f := framework.NewDefaultFramework("esipp")
f.NamespacePodSecurityLevel = admissionapi.LevelBaseline
var loadBalancerCreateTimeout time.Duration
@ -987,6 +982,14 @@ var _ = common.SIGDescribe("LoadBalancers ExternalTrafficPolicy: Local", feature
framework.ExpectNoError(err)
})
// FIXME: figure out the actual expected semantics for
// "ExternalTrafficPolicy: Local" + "IPMode: Proxy".
// https://issues.k8s.io/123714
ingress := &svc.Status.LoadBalancer.Ingress[0]
if ingress.IP == "" || (ingress.IPMode != nil && *ingress.IPMode == v1.LoadBalancerIPModeProxy) {
e2eskipper.Skipf("LoadBalancer uses 'Proxy' IPMode")
}
svcTCPPort := int(svc.Spec.Ports[0].Port)
ingressIP := e2eservice.GetIngressPoint(&svc.Status.LoadBalancer.Ingress[0])
@ -1133,6 +1136,14 @@ var _ = common.SIGDescribe("LoadBalancers ExternalTrafficPolicy: Local", feature
framework.ExpectNoError(err)
})
// FIXME: figure out the actual expected semantics for
// "ExternalTrafficPolicy: Local" + "IPMode: Proxy".
// https://issues.k8s.io/123714
ingress := &svc.Status.LoadBalancer.Ingress[0]
if ingress.IP == "" || (ingress.IPMode != nil && *ingress.IPMode == v1.LoadBalancerIPModeProxy) {
e2eskipper.Skipf("LoadBalancer uses 'Proxy' IPMode")
}
ingressIP := e2eservice.GetIngressPoint(&svc.Status.LoadBalancer.Ingress[0])
port := strconv.Itoa(int(svc.Spec.Ports[0].Port))
ipPort := net.JoinHostPort(ingressIP, port)