From 473f8bea541aa3549b74033dcd5f91e1e4d3517f Mon Sep 17 00:00:00 2001 From: Alex Robinson Date: Mon, 24 Aug 2015 23:03:42 +0000 Subject: [PATCH] Be more lenient when deriving the node tag from a node name on GCE. --- pkg/cloudprovider/gce/gce.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkg/cloudprovider/gce/gce.go b/pkg/cloudprovider/gce/gce.go index 4d3156d965f..bfacb53fa14 100644 --- a/pkg/cloudprovider/gce/gce.go +++ b/pkg/cloudprovider/gce/gce.go @@ -443,10 +443,15 @@ func (gce *GCECloud) CreateTCPLoadBalancer(name, region string, externalIP net.I } // This is kind of hacky, but the managed instance group adds 4 random chars and a hyphen -// to the base name. +// to the base name. Older naming schemes put a hyphen and an incrementing index after +// the base name. Thus we pull off the characters after the final dash to support both. func (gce *GCECloud) computeHostTag(host string) string { host = strings.SplitN(host, ".", 2)[0] - return host[:len(host)-5] + lastHyphen := strings.LastIndex(host, "-") + if lastHyphen == -1 { + return host + } + return host[:lastHyphen] } // UpdateTCPLoadBalancer is an implementation of TCPLoadBalancer.UpdateTCPLoadBalancer.