From 5cded0f9a9a4e900749a4f292e0d6e65dbce8c3a Mon Sep 17 00:00:00 2001 From: Guilhem Bonnefille Date: Fri, 7 Jul 2023 11:37:18 +0200 Subject: [PATCH] fix: replace deprecated Ingress annotation Before the IngressClass resource and ingressClassName field were added in Kubernetes 1.18, Ingress classes were specified with a kubernetes.io/ingress.class annotation on the Ingress. This annotation was never formally defined, but was widely supported by Ingress controllers. The newer ingressClassName field on Ingresses is a replacement for that annotation, but is not a direct equivalent. While the annotation was generally used to reference the name of the Ingress controller that should implement the Ingress, the field is a reference to an IngressClass resource that contains additional Ingress configuration, including the name of the Ingress controller. Cf. https://kubernetes.io/docs/concepts/services-networking/ingress/#deprecated-annotation Signed-off-by: Guilhem Bonnefille --- .../controller/devworkspacerouting/solvers/basic_solver.go | 1 - controllers/controller/devworkspacerouting/solvers/common.go | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/controllers/controller/devworkspacerouting/solvers/basic_solver.go b/controllers/controller/devworkspacerouting/solvers/basic_solver.go index a109a65a0..6c1e155e2 100644 --- a/controllers/controller/devworkspacerouting/solvers/basic_solver.go +++ b/controllers/controller/devworkspacerouting/solvers/basic_solver.go @@ -31,7 +31,6 @@ var routeAnnotations = func(endpointName string) map[string]string { var nginxIngressAnnotations = func(endpointName string) map[string]string { return map[string]string{ - "kubernetes.io/ingress.class": "nginx", "nginx.ingress.kubernetes.io/rewrite-target": "/", "nginx.ingress.kubernetes.io/ssl-redirect": "false", constants.DevWorkspaceEndpointNameAnnotation: endpointName, diff --git a/controllers/controller/devworkspacerouting/solvers/common.go b/controllers/controller/devworkspacerouting/solvers/common.go index 5f17beb81..616e20534 100644 --- a/controllers/controller/devworkspacerouting/solvers/common.go +++ b/controllers/controller/devworkspacerouting/solvers/common.go @@ -25,6 +25,7 @@ import ( networkingv1 "k8s.io/api/networking/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" + "k8s.io/utils/pointer" ) type DevWorkspaceMetadata struct { @@ -223,6 +224,7 @@ func getIngressForEndpoint(routingSuffix string, endpoint controllerv1alpha1.End Annotations: nginxIngressAnnotations(endpoint.Name), }, Spec: networkingv1.IngressSpec{ + IngressClassName: pointer.String("nginx"), Rules: []networkingv1.IngressRule{ { Host: hostname,