mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-02 16:29:21 +00:00
create loadbalancer service in tests only if test depends on it
This commit is contained in:
parent
b9e8d2aee6
commit
a453131f95
@ -163,7 +163,7 @@ var _ = framework.KubeDescribe("Federated ingresses [Feature:Federation]", func(
|
|||||||
clusters = f.GetRegisteredClusters()
|
clusters = f.GetRegisteredClusters()
|
||||||
ns = f.FederationNamespace.Name
|
ns = f.FederationNamespace.Name
|
||||||
// create backend service
|
// create backend service
|
||||||
service = createServiceOrFail(f.FederationClientset, ns, FederatedIngressServiceName)
|
service = createLBServiceOrFail(f.FederationClientset, ns, FederatedIngressServiceName)
|
||||||
// create the TLS secret
|
// create the TLS secret
|
||||||
secret = createTLSSecretOrFail(f.FederationClientset, ns, FederatedIngressTLSSecretName)
|
secret = createTLSSecretOrFail(f.FederationClientset, ns, FederatedIngressTLSSecretName)
|
||||||
// wait for services objects sync
|
// wait for services objects sync
|
||||||
|
@ -183,7 +183,7 @@ var _ = framework.KubeDescribe("Federated Services [Feature:Federation]", func()
|
|||||||
|
|
||||||
backendPods = createBackendPodsOrFail(clusters, nsName, FederatedServicePodName)
|
backendPods = createBackendPodsOrFail(clusters, nsName, FederatedServicePodName)
|
||||||
|
|
||||||
service = createServiceOrFail(f.FederationClientset, nsName, FederatedServiceName)
|
service = createLBServiceOrFail(f.FederationClientset, nsName, FederatedServiceName)
|
||||||
obj, err := api.Scheme.DeepCopy(service)
|
obj, err := api.Scheme.DeepCopy(service)
|
||||||
// Cloning shouldn't fail. On the off-chance it does, we
|
// Cloning shouldn't fail. On the off-chance it does, we
|
||||||
// should shallow copy service to serviceShard before
|
// should shallow copy service to serviceShard before
|
||||||
|
@ -120,6 +120,36 @@ func createService(clientset *fedclientset.Clientset, namespace, name string) (*
|
|||||||
}
|
}
|
||||||
By(fmt.Sprintf("Creating federated service %q in namespace %q", name, namespace))
|
By(fmt.Sprintf("Creating federated service %q in namespace %q", name, namespace))
|
||||||
|
|
||||||
|
service := &v1.Service{
|
||||||
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
|
Name: name,
|
||||||
|
Namespace: namespace,
|
||||||
|
},
|
||||||
|
Spec: v1.ServiceSpec{
|
||||||
|
Selector: FederatedServiceLabels,
|
||||||
|
Type: v1.ServiceTypeClusterIP,
|
||||||
|
Ports: []v1.ServicePort{
|
||||||
|
{
|
||||||
|
Name: "http",
|
||||||
|
Protocol: v1.ProtocolTCP,
|
||||||
|
Port: 80,
|
||||||
|
TargetPort: intstr.FromInt(8080),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
SessionAffinity: v1.ServiceAffinityNone,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
By(fmt.Sprintf("Trying to create service %q in namespace %q", service.Name, namespace))
|
||||||
|
return clientset.Services(namespace).Create(service)
|
||||||
|
}
|
||||||
|
|
||||||
|
func createLBService(clientset *fedclientset.Clientset, namespace, name string) (*v1.Service, error) {
|
||||||
|
if clientset == nil || len(namespace) == 0 {
|
||||||
|
return nil, fmt.Errorf("Internal error: invalid parameters passed to createService: clientset: %v, namespace: %v", clientset, namespace)
|
||||||
|
}
|
||||||
|
By(fmt.Sprintf("Creating federated service (type: load balancer) %q in namespace %q", name, namespace))
|
||||||
|
|
||||||
// Tests can be run in parallel, so we need a different nodePort for
|
// Tests can be run in parallel, so we need a different nodePort for
|
||||||
// each test.
|
// each test.
|
||||||
// We add 1 to FederatedSvcNodePortLast because IntnRange's range end
|
// We add 1 to FederatedSvcNodePortLast because IntnRange's range end
|
||||||
@ -133,7 +163,7 @@ func createService(clientset *fedclientset.Clientset, namespace, name string) (*
|
|||||||
},
|
},
|
||||||
Spec: v1.ServiceSpec{
|
Spec: v1.ServiceSpec{
|
||||||
Selector: FederatedServiceLabels,
|
Selector: FederatedServiceLabels,
|
||||||
Type: "LoadBalancer",
|
Type: v1.ServiceTypeLoadBalancer,
|
||||||
Ports: []v1.ServicePort{
|
Ports: []v1.ServicePort{
|
||||||
{
|
{
|
||||||
Name: "http",
|
Name: "http",
|
||||||
@ -146,6 +176,7 @@ func createService(clientset *fedclientset.Clientset, namespace, name string) (*
|
|||||||
SessionAffinity: v1.ServiceAffinityNone,
|
SessionAffinity: v1.ServiceAffinityNone,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
By(fmt.Sprintf("Trying to create service %q in namespace %q", service.Name, namespace))
|
By(fmt.Sprintf("Trying to create service %q in namespace %q", service.Name, namespace))
|
||||||
return clientset.Services(namespace).Create(service)
|
return clientset.Services(namespace).Create(service)
|
||||||
}
|
}
|
||||||
@ -157,6 +188,13 @@ func createServiceOrFail(clientset *fedclientset.Clientset, namespace, name stri
|
|||||||
return service
|
return service
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func createLBServiceOrFail(clientset *fedclientset.Clientset, namespace, name string) *v1.Service {
|
||||||
|
service, err := createLBService(clientset, namespace, name)
|
||||||
|
framework.ExpectNoError(err, "Creating service %q in namespace %q", service.Name, namespace)
|
||||||
|
By(fmt.Sprintf("Successfully created federated service (type: load balancer) %q in namespace %q", name, namespace))
|
||||||
|
return service
|
||||||
|
}
|
||||||
|
|
||||||
func deleteServiceOrFail(clientset *fedclientset.Clientset, namespace string, serviceName string, orphanDependents *bool) {
|
func deleteServiceOrFail(clientset *fedclientset.Clientset, namespace string, serviceName string, orphanDependents *bool) {
|
||||||
if clientset == nil || len(namespace) == 0 || len(serviceName) == 0 {
|
if clientset == nil || len(namespace) == 0 || len(serviceName) == 0 {
|
||||||
Fail(fmt.Sprintf("Internal error: invalid parameters passed to deleteServiceOrFail: clientset: %v, namespace: %v, service: %v", clientset, namespace, serviceName))
|
Fail(fmt.Sprintf("Internal error: invalid parameters passed to deleteServiceOrFail: clientset: %v, namespace: %v, service: %v", clientset, namespace, serviceName))
|
||||||
@ -209,9 +247,11 @@ func cleanupServiceShardsAndProviderResources(namespace string, service *v1.Serv
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
framework.Logf("Failed to delete service %q in namespace %q, in cluster %q: %v", service.Name, namespace, name, err)
|
framework.Logf("Failed to delete service %q in namespace %q, in cluster %q: %v", service.Name, namespace, name, err)
|
||||||
}
|
}
|
||||||
err = cleanupServiceShardLoadBalancer(name, cSvc, fedframework.FederatedDefaultTestTimeout)
|
if service.Spec.Type == v1.ServiceTypeLoadBalancer {
|
||||||
if err != nil {
|
err = cleanupServiceShardLoadBalancer(name, cSvc, fedframework.FederatedDefaultTestTimeout)
|
||||||
framework.Logf("Failed to delete cloud provider resources for service %q in namespace %q, in cluster %q", service.Name, namespace, name)
|
if err != nil {
|
||||||
|
framework.Logf("Failed to delete cloud provider resources for service %q in namespace %q, in cluster %q, err: %v", service.Name, namespace, name, err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user