From e2c49a0dd1993a7800462a6ea8f6e918ae0b8516 Mon Sep 17 00:00:00 2001 From: Slavik Panasovets Date: Thu, 2 Dec 2021 15:48:52 +0000 Subject: [PATCH] add ELBRbsFinalizer --- .../legacy-cloud-providers/gce/gce_loadbalancer_external.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/staging/src/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_external.go b/staging/src/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_external.go index 5b9f2344b8d..a4288a03b53 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_external.go +++ b/staging/src/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_external.go @@ -41,6 +41,8 @@ import ( const ( errStrLbNoHosts = "cannot EnsureLoadBalancer() with no hosts" + + ELBRbsFinalizer = "gke.networking.io/l4-netlb-v2" ) // ensureExternalLoadBalancer is the external implementation of LoadBalancer.EnsureLoadBalancer. @@ -56,6 +58,10 @@ func (g *Cloud) ensureExternalLoadBalancer(clusterName string, clusterID string, if val, ok := apiService.Annotations[RBSAnnotationKey]; ok && val == RBSEnabled { return nil, cloudprovider.ImplementedElsewhere } + // Skip service handling if service has Regional Backend Services finalizer + if hasFinalizer(apiService, ELBRbsFinalizer) { + return nil, cloudprovider.ImplementedElsewhere + } if len(nodes) == 0 { return nil, fmt.Errorf(errStrLbNoHosts)