diff --git a/install/installer/pkg/common/objects.go b/install/installer/pkg/common/objects.go index 7b9ff280ad1218..049992796a4cdd 100644 --- a/install/installer/pkg/common/objects.go +++ b/install/installer/pkg/common/objects.go @@ -40,17 +40,18 @@ func DefaultServiceAccount(component string) RenderFunc { } type ServicePort struct { + Name string ContainerPort int32 ServicePort int32 } -func GenerateService(component string, ports map[string]ServicePort, mod ...func(spec *corev1.Service)) RenderFunc { +func GenerateService(component string, ports []ServicePort, mod ...func(spec *corev1.Service)) RenderFunc { return func(cfg *RenderContext) ([]runtime.Object, error) { var servicePorts []corev1.ServicePort - for name, port := range ports { + for _, port := range ports { servicePorts = append(servicePorts, corev1.ServicePort{ Protocol: *TCPProtocol, - Name: name, + Name: port.Name, Port: port.ServicePort, TargetPort: intstr.IntOrString{IntVal: port.ContainerPort}, }) diff --git a/install/installer/pkg/components/blobserve/objects.go b/install/installer/pkg/components/blobserve/objects.go index 4770965a29d9c1..59595c292a4e2e 100644 --- a/install/installer/pkg/components/blobserve/objects.go +++ b/install/installer/pkg/components/blobserve/objects.go @@ -11,8 +11,9 @@ var Objects = common.CompositeRenderFunc( deployment, networkpolicy, rolebinding, - common.GenerateService(Component, map[string]common.ServicePort{ - ServicePortName: { + common.GenerateService(Component, []common.ServicePort{ + { + Name: ServicePortName, ContainerPort: ContainerPort, ServicePort: ServicePort, }, diff --git a/install/installer/pkg/components/content-service/objects.go b/install/installer/pkg/components/content-service/objects.go index 5d2362f0d6abe0..ae38b5ecbc4fec 100644 --- a/install/installer/pkg/components/content-service/objects.go +++ b/install/installer/pkg/components/content-service/objects.go @@ -11,12 +11,14 @@ var Objects = common.CompositeRenderFunc( deployment, networkpolicy, rolebinding, - common.GenerateService(Component, map[string]common.ServicePort{ - RPCServiceName: { + common.GenerateService(Component, []common.ServicePort{ + { + Name: RPCServiceName, ContainerPort: RPCPort, ServicePort: RPCPort, }, - PrometheusName: { + { + Name: PrometheusName, ContainerPort: PrometheusPort, ServicePort: PrometheusPort, }, diff --git a/install/installer/pkg/components/dashboard/objects.go b/install/installer/pkg/components/dashboard/objects.go index b009b0c3d3c985..5b39ac262623d7 100644 --- a/install/installer/pkg/components/dashboard/objects.go +++ b/install/installer/pkg/components/dashboard/objects.go @@ -10,8 +10,9 @@ var Objects = common.CompositeRenderFunc( deployment, networkpolicy, rolebinding, - common.GenerateService(Component, map[string]common.ServicePort{ - PortName: { + common.GenerateService(Component, []common.ServicePort{ + { + Name: PortName, ContainerPort: ContainerPort, ServicePort: ServicePort, }, diff --git a/install/installer/pkg/components/database/cloudsql/objects.go b/install/installer/pkg/components/database/cloudsql/objects.go index cc8ddf07c01c8b..3bff25a2e043fa 100644 --- a/install/installer/pkg/components/database/cloudsql/objects.go +++ b/install/installer/pkg/components/database/cloudsql/objects.go @@ -14,8 +14,9 @@ var Objects = common.CompositeRenderFunc( dbinit.Objects, rolebinding, common.DefaultServiceAccount(Component), - common.GenerateService(Component, map[string]common.ServicePort{ - Component: { + common.GenerateService(Component, []common.ServicePort{ + { + Name: Component, ContainerPort: Port, ServicePort: Port, }, diff --git a/install/installer/pkg/components/ide-proxy/service.go b/install/installer/pkg/components/ide-proxy/service.go index b01586aa5c4303..93622547cc5024 100644 --- a/install/installer/pkg/components/ide-proxy/service.go +++ b/install/installer/pkg/components/ide-proxy/service.go @@ -21,8 +21,9 @@ func service(ctx *common.RenderContext) ([]runtime.Object, error) { return nil }) - ports := map[string]common.ServicePort{ - PortName: { + ports := []common.ServicePort{ + { + Name: PortName, ContainerPort: ContainerPort, ServicePort: ServicePort, }, diff --git a/install/installer/pkg/components/image-builder-mk3/objects.go b/install/installer/pkg/components/image-builder-mk3/objects.go index 0f27c6447418d4..72974801c507d6 100644 --- a/install/installer/pkg/components/image-builder-mk3/objects.go +++ b/install/installer/pkg/components/image-builder-mk3/objects.go @@ -12,8 +12,9 @@ var Objects = common.CompositeRenderFunc( deployment, networkpolicy, rolebinding, - common.GenerateService(Component, map[string]common.ServicePort{ - RPCPortName: { + common.GenerateService(Component, []common.ServicePort{ + { + Name: RPCPortName, ContainerPort: RPCPort, ServicePort: RPCPort, }, diff --git a/install/installer/pkg/components/openvsx-proxy/service.go b/install/installer/pkg/components/openvsx-proxy/service.go index cd912fba7c57f4..0ea4008e0a0795 100644 --- a/install/installer/pkg/components/openvsx-proxy/service.go +++ b/install/installer/pkg/components/openvsx-proxy/service.go @@ -21,12 +21,14 @@ func service(ctx *common.RenderContext) ([]runtime.Object, error) { return nil }) - ports := map[string]common.ServicePort{ - PortName: { + ports := []common.ServicePort{ + { + Name: PortName, ContainerPort: ContainerPort, ServicePort: ServicePort, }, - PrometheusPortName: { + { + Name: PrometheusPortName, ContainerPort: PrometheusPort, ServicePort: PrometheusPort, }, diff --git a/install/installer/pkg/components/proxy/service.go b/install/installer/pkg/components/proxy/service.go index 698c3b72f40c03..452ad2855bb7af 100644 --- a/install/installer/pkg/components/proxy/service.go +++ b/install/installer/pkg/components/proxy/service.go @@ -31,25 +31,29 @@ func service(ctx *common.RenderContext) ([]runtime.Object, error) { return nil }) - ports := map[string]common.ServicePort{ - ContainerHTTPName: { + ports := []common.ServicePort{ + { + Name: ContainerHTTPName, ContainerPort: ContainerHTTPPort, ServicePort: ContainerHTTPPort, }, - ContainerHTTPSName: { + { + Name: ContainerHTTPSName, ContainerPort: ContainerHTTPSPort, ServicePort: ContainerHTTPSPort, }, - MetricsContainerName: { + { + Name: MetricsContainerName, ContainerPort: PrometheusPort, ServicePort: PrometheusPort, }, } if ctx.Config.SSHGatewayHostKey != nil { - ports[ContainerSSHName] = common.ServicePort{ + ports = append(ports, common.ServicePort{ + Name: ContainerSSHName, ContainerPort: ContainerSSHPort, ServicePort: ContainerSSHPort, - } + }) } return common.GenerateService(Component, ports, func(service *corev1.Service) { diff --git a/install/installer/pkg/components/public-api-server/service.go b/install/installer/pkg/components/public-api-server/service.go index 1372ba62b6bca6..ac817b3ae59433 100644 --- a/install/installer/pkg/components/public-api-server/service.go +++ b/install/installer/pkg/components/public-api-server/service.go @@ -9,8 +9,9 @@ import ( ) func service(ctx *common.RenderContext) ([]runtime.Object, error) { - return common.GenerateService(Component, map[string]common.ServicePort{ - GRPCPortName: { + return common.GenerateService(Component, []common.ServicePort{ + { + Name: GRPCPortName, ContainerPort: GRPCContainerPort, ServicePort: GRPCServicePort, }, diff --git a/install/installer/pkg/components/registry-facade/objects.go b/install/installer/pkg/components/registry-facade/objects.go index c66efdb76a56eb..190a34edbe61b6 100644 --- a/install/installer/pkg/components/registry-facade/objects.go +++ b/install/installer/pkg/components/registry-facade/objects.go @@ -16,8 +16,9 @@ var Objects = common.CompositeRenderFunc( podsecuritypolicy, rolebinding, certificate, - common.GenerateService(Component, map[string]common.ServicePort{ - ContainerPortName: { + common.GenerateService(Component, []common.ServicePort{ + { + Name: ContainerPortName, ContainerPort: ContainerPort, ServicePort: ServicePort, }, diff --git a/install/installer/pkg/components/server/objects.go b/install/installer/pkg/components/server/objects.go index 40c16fd0214db5..6aed3a0a27a00d 100644 --- a/install/installer/pkg/components/server/objects.go +++ b/install/installer/pkg/components/server/objects.go @@ -16,24 +16,29 @@ var Objects = common.CompositeRenderFunc( networkpolicy, role, rolebinding, - common.GenerateService(Component, map[string]common.ServicePort{ - ContainerPortName: { + common.GenerateService(Component, []common.ServicePort{ + { + Name: ContainerPortName, ContainerPort: ContainerPort, ServicePort: ServicePort, }, - PrometheusPortName: { + { + Name: PrometheusPortName, ContainerPort: PrometheusPort, ServicePort: PrometheusPort, }, - InstallationAdminName: { + { + Name: InstallationAdminName, ContainerPort: InstallationAdminPort, ServicePort: InstallationAdminPort, }, - DebugPortName: { + { + Name: DebugPortName, ContainerPort: common.DebugPort, ServicePort: common.DebugPort, }, - DebugNodePortName: { + { + Name: DebugNodePortName, ContainerPort: common.DebugNodePort, ServicePort: common.DebugNodePort, }, diff --git a/install/installer/pkg/components/ws-manager/objects.go b/install/installer/pkg/components/ws-manager/objects.go index 83955d998ba28d..4747ff1d8fb624 100644 --- a/install/installer/pkg/components/ws-manager/objects.go +++ b/install/installer/pkg/components/ws-manager/objects.go @@ -15,8 +15,9 @@ var Objects = common.CompositeRenderFunc( role, rolebinding, common.DefaultServiceAccount(Component), - common.GenerateService(Component, map[string]common.ServicePort{ - RPCPortName: { + common.GenerateService(Component, []common.ServicePort{ + { + Name: RPCPortName, ContainerPort: RPCPort, ServicePort: RPCPort, }, diff --git a/install/installer/pkg/components/ws-proxy/objects.go b/install/installer/pkg/components/ws-proxy/objects.go index d6f3eebd887808..bdbe54ca25ae2d 100644 --- a/install/installer/pkg/components/ws-proxy/objects.go +++ b/install/installer/pkg/components/ws-proxy/objects.go @@ -18,20 +18,24 @@ var Objects = common.CompositeRenderFunc( rolebinding, role, func(cfg *common.RenderContext) ([]runtime.Object, error) { - ports := map[string]common.ServicePort{ - HTTPProxyPortName: { + ports := []common.ServicePort{ + { + Name: HTTPProxyPortName, ContainerPort: HTTPProxyPort, ServicePort: HTTPProxyPort, }, - HTTPSProxyPortName: { + { + Name: HTTPSProxyPortName, ContainerPort: HTTPSProxyPort, ServicePort: HTTPSProxyPort, }, - MetricsPortName: { + { + Name: MetricsPortName, ContainerPort: MetricsPort, ServicePort: MetricsPort, }, - SSHPortName: { + { + Name: SSHPortName, ContainerPort: SSHTargetPort, ServicePort: SSHServicePort, },