diff --git a/install/installer/pkg/components/public-api-server/constants.go b/install/installer/pkg/components/public-api-server/constants.go index 129f7565326d6f..f13d680d5f039b 100644 --- a/install/installer/pkg/components/public-api-server/constants.go +++ b/install/installer/pkg/components/public-api-server/constants.go @@ -5,7 +5,13 @@ package public_api_server const ( - Component = "public-api-server" - ContainerPort = 9000 - PortName = "http" + Component = "public-api-server" + + HTTPPortName = "http" + HTTPContainerPort = 9000 + HTTPServicePort = 9000 + + GRPCPortName = "grpc" + GRPCContainerPort = 9001 + GRPCServicePort = 9001 ) diff --git a/install/installer/pkg/components/public-api-server/deployment.go b/install/installer/pkg/components/public-api-server/deployment.go index 06d7248b5dda2c..97a434fbef85ea 100644 --- a/install/installer/pkg/components/public-api-server/deployment.go +++ b/install/installer/pkg/components/public-api-server/deployment.go @@ -52,10 +52,16 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) { "memory": resource.MustParse("32Mi"), }, }, - Ports: []corev1.ContainerPort{{ - ContainerPort: ContainerPort, - Name: PortName, - }}, + Ports: []corev1.ContainerPort{ + { + ContainerPort: HTTPContainerPort, + Name: HTTPPortName, + }, + { + ContainerPort: GRPCContainerPort, + Name: GRPCPortName, + }, + }, SecurityContext: &corev1.SecurityContext{ Privileged: pointer.Bool(false), }, @@ -66,7 +72,7 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) { ProbeHandler: corev1.ProbeHandler{ HTTPGet: &corev1.HTTPGetAction{ Path: "/", - Port: intstr.IntOrString{IntVal: ContainerPort}, + Port: intstr.IntOrString{IntVal: HTTPContainerPort}, Scheme: corev1.URISchemeHTTP, }, }, diff --git a/install/installer/pkg/components/public-api-server/objects.go b/install/installer/pkg/components/public-api-server/objects.go index 2207ef455e3e07..f4883b36b337f6 100644 --- a/install/installer/pkg/components/public-api-server/objects.go +++ b/install/installer/pkg/components/public-api-server/objects.go @@ -21,6 +21,7 @@ func Objects(ctx *common.RenderContext) ([]runtime.Object, error) { deployment, rolebinding, common.DefaultServiceAccount(Component), + service, )(ctx) } diff --git a/install/installer/pkg/components/public-api-server/service.go b/install/installer/pkg/components/public-api-server/service.go new file mode 100644 index 00000000000000..2dc78f0c7b8e5f --- /dev/null +++ b/install/installer/pkg/components/public-api-server/service.go @@ -0,0 +1,22 @@ +// Copyright (c) 2022 Gitpod GmbH. All rights reserved. +// Licensed under the MIT License. See License-MIT.txt in the project root for license information. + +package public_api_server + +import ( + "github.com/gitpod-io/gitpod/installer/pkg/common" + "k8s.io/apimachinery/pkg/runtime" +) + +func service(ctx *common.RenderContext) ([]runtime.Object, error) { + return common.GenerateService(Component, map[string]common.ServicePort{ + HTTPPortName: { + ContainerPort: HTTPContainerPort, + ServicePort: HTTPServicePort, + }, + GRPCPortName: { + ContainerPort: GRPCContainerPort, + ServicePort: GRPCServicePort, + }, + })(ctx) +}