Skip to content

Commit

Permalink
slightly refactor names
Browse files Browse the repository at this point in the history
  • Loading branch information
nikolay-ngrok committed Nov 30, 2023
1 parent 5dc4670 commit 1c360c6
Showing 1 changed file with 24 additions and 6 deletions.
30 changes: 24 additions & 6 deletions internal/store/driver.go
Original file line number Diff line number Diff line change
Expand Up @@ -611,7 +611,7 @@ func (d *Driver) calculateHTTPSEdges() map[string]ingressv1alpha1.HTTPSEdge {
}

serviceName := httpIngressPath.Backend.Service.Name
serviceUID, servicePort, _, _, err := d.getBackendServicePort(*httpIngressPath.Backend.Service, ingress.Namespace)
serviceUID, servicePort, err := d.getEdgeBackend(*httpIngressPath.Backend.Service, ingress.Namespace)
if err != nil {
d.log.Error(err, "could not find port for service", "namespace", ingress.Namespace, "service", serviceName)
continue
Expand Down Expand Up @@ -670,7 +670,7 @@ func (d *Driver) calculateTunnels() map[tunnelKey]ingressv1alpha1.Tunnel {
}

serviceName := path.Backend.Service.Name
serviceUID, servicePort, protocol, appProtocol, err := d.getBackendServicePort(*path.Backend.Service, ingress.Namespace)
serviceUID, servicePort, protocol, appProtocol, err := d.getTunnelBackend(*path.Backend.Service, ingress.Namespace)
if err != nil {
d.log.Error(err, "could not find port for service", "namespace", ingress.Namespace, "service", serviceName)
}
Expand Down Expand Up @@ -748,13 +748,17 @@ func (d *Driver) calculateIngressLoadBalancerIPStatus(ing *netv1.Ingress, c clie
return status
}

func (d *Driver) getBackendServicePort(backendSvc netv1.IngressServiceBackend, namespace string) (string, int32, string, string, error) {
service, err := d.store.GetServiceV1(backendSvc.Name, namespace)
func (d *Driver) getEdgeBackend(backendSvc netv1.IngressServiceBackend, namespace string) (string, int32, error) {
service, servicePort, err := d.findBackendServicePort(backendSvc, namespace)
if err != nil {
return "", 0, "", "", err
return "", 0, err
}

servicePort, err := d.findServicesPort(service, backendSvc.Port)
return string(service.UID), servicePort.Port, nil
}

func (d *Driver) getTunnelBackend(backendSvc netv1.IngressServiceBackend, namespace string) (string, int32, string, string, error) {
service, servicePort, err := d.findBackendServicePort(backendSvc, namespace)
if err != nil {
return "", 0, "", "", err
}
Expand All @@ -772,6 +776,20 @@ func (d *Driver) getBackendServicePort(backendSvc netv1.IngressServiceBackend, n
return string(service.UID), servicePort.Port, protocol, appProtocol, nil
}

func (d *Driver) findBackendServicePort(backendSvc netv1.IngressServiceBackend, namespace string) (*corev1.Service, *corev1.ServicePort, error) {
service, err := d.store.GetServiceV1(backendSvc.Name, namespace)
if err != nil {
return nil, nil, err
}

servicePort, err := d.findServicesPort(service, backendSvc.Port)
if err != nil {
return nil, nil, err
}

return service, servicePort, nil
}

func (d *Driver) findServicesPort(service *corev1.Service, backendSvcPort netv1.ServiceBackendPort) (*corev1.ServicePort, error) {
for _, port := range service.Spec.Ports {
if (backendSvcPort.Number > 0 && port.Port == backendSvcPort.Number) || port.Name == backendSvcPort.Name {
Expand Down

0 comments on commit 1c360c6

Please sign in to comment.