mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-12 13:31:52 +00:00
Chore: add load balancer tweak function
This commit is contained in:
parent
1c465c51e8
commit
28db34a231
@ -99,6 +99,12 @@ func tweakAddPorts(protocol v1.Protocol, targetPort int) serviceTweak {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func tweakAddLBClass(loadBalancerClass *string) serviceTweak {
|
||||||
|
return func(s *v1.Service) {
|
||||||
|
s.Spec.LoadBalancerClass = loadBalancerClass
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Wrap newService so that you don't have to call default arguments again and again.
|
// Wrap newService so that you don't have to call default arguments again and again.
|
||||||
func defaultExternalService() *v1.Service {
|
func defaultExternalService() *v1.Service {
|
||||||
return newService("external-balancer", v1.ServiceTypeLoadBalancer)
|
return newService("external-balancer", v1.ServiceTypeLoadBalancer)
|
||||||
@ -201,16 +207,7 @@ func TestSyncLoadBalancerIfNeeded(t *testing.T) {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
desc: "service specifies loadBalancerClass",
|
desc: "service specifies loadBalancerClass",
|
||||||
service: &v1.Service{
|
service: newService("with-external-balancer", v1.ServiceTypeLoadBalancer, tweakAddLBClass(utilpointer.String("custom-loadbalancer"))),
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
|
||||||
Name: "with-external-balancer",
|
|
||||||
Namespace: "default",
|
|
||||||
},
|
|
||||||
Spec: v1.ServiceSpec{
|
|
||||||
Type: v1.ServiceTypeLoadBalancer,
|
|
||||||
LoadBalancerClass: utilpointer.StringPtr("custom-loadbalancer"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
expectOp: deleteLoadBalancer,
|
expectOp: deleteLoadBalancer,
|
||||||
expectCreateAttempt: false,
|
expectCreateAttempt: false,
|
||||||
expectPatchStatus: false,
|
expectPatchStatus: false,
|
||||||
@ -218,20 +215,7 @@ func TestSyncLoadBalancerIfNeeded(t *testing.T) {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
desc: "service doesn't specify loadBalancerClass",
|
desc: "service doesn't specify loadBalancerClass",
|
||||||
service: &v1.Service{
|
service: newService("with-external-balancer", v1.ServiceTypeLoadBalancer, tweakAddLBClass(nil), tweakAddPorts(v1.ProtocolSCTP, 0)),
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
|
||||||
Name: "with-external-balancer",
|
|
||||||
Namespace: "default",
|
|
||||||
},
|
|
||||||
Spec: v1.ServiceSpec{
|
|
||||||
Ports: []v1.ServicePort{{
|
|
||||||
Port: 80,
|
|
||||||
Protocol: v1.ProtocolSCTP,
|
|
||||||
}},
|
|
||||||
Type: v1.ServiceTypeLoadBalancer,
|
|
||||||
LoadBalancerClass: nil,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
expectOp: ensureLoadBalancer,
|
expectOp: ensureLoadBalancer,
|
||||||
expectCreateAttempt: true,
|
expectCreateAttempt: true,
|
||||||
expectPatchStatus: true,
|
expectPatchStatus: true,
|
||||||
|
Loading…
Reference in New Issue
Block a user