Skip source IP preservation checks for Proxy-type load balancers
To be revisited
This commit is contained in:
		@@ -927,11 +927,6 @@ var _ = common.SIGDescribe("LoadBalancers", feature.LoadBalancer, func() {
 | 
				
			|||||||
})
 | 
					})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var _ = common.SIGDescribe("LoadBalancers ExternalTrafficPolicy: Local", feature.LoadBalancer, framework.WithSlow(), 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 := framework.NewDefaultFramework("esipp")
 | 
				
			||||||
	f.NamespacePodSecurityLevel = admissionapi.LevelBaseline
 | 
						f.NamespacePodSecurityLevel = admissionapi.LevelBaseline
 | 
				
			||||||
	var loadBalancerCreateTimeout time.Duration
 | 
						var loadBalancerCreateTimeout time.Duration
 | 
				
			||||||
@@ -987,6 +982,14 @@ var _ = common.SIGDescribe("LoadBalancers ExternalTrafficPolicy: Local", feature
 | 
				
			|||||||
			framework.ExpectNoError(err)
 | 
								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)
 | 
							svcTCPPort := int(svc.Spec.Ports[0].Port)
 | 
				
			||||||
		ingressIP := e2eservice.GetIngressPoint(&svc.Status.LoadBalancer.Ingress[0])
 | 
							ingressIP := e2eservice.GetIngressPoint(&svc.Status.LoadBalancer.Ingress[0])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -1133,6 +1136,14 @@ var _ = common.SIGDescribe("LoadBalancers ExternalTrafficPolicy: Local", feature
 | 
				
			|||||||
			framework.ExpectNoError(err)
 | 
								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])
 | 
							ingressIP := e2eservice.GetIngressPoint(&svc.Status.LoadBalancer.Ingress[0])
 | 
				
			||||||
		port := strconv.Itoa(int(svc.Spec.Ports[0].Port))
 | 
							port := strconv.Itoa(int(svc.Spec.Ports[0].Port))
 | 
				
			||||||
		ipPort := net.JoinHostPort(ingressIP, port)
 | 
							ipPort := net.JoinHostPort(ingressIP, port)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user