From 36deb14f58f4acab9f5dca4d92e9e65aae3e4e77 Mon Sep 17 00:00:00 2001 From: Derek Parker Date: Sat, 8 Aug 2015 10:20:29 -0500 Subject: [PATCH] Handle full hostname when computing host tag on GCE The current code assumes the full domain name will not be included, which is not always the case. This patch adds support for computing the host tag from a fully qualified domain name. --- pkg/cloudprovider/gce/gce.go | 1 + pkg/cloudprovider/gce/gce_test.go | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/pkg/cloudprovider/gce/gce.go b/pkg/cloudprovider/gce/gce.go index b43dee2235f..4d3156d965f 100644 --- a/pkg/cloudprovider/gce/gce.go +++ b/pkg/cloudprovider/gce/gce.go @@ -445,6 +445,7 @@ 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. func (gce *GCECloud) computeHostTag(host string) string { + host = strings.SplitN(host, ".", 2)[0] return host[:len(host)-5] } diff --git a/pkg/cloudprovider/gce/gce_test.go b/pkg/cloudprovider/gce/gce_test.go index bc2ae1a4a5c..3f916848135 100644 --- a/pkg/cloudprovider/gce/gce_test.go +++ b/pkg/cloudprovider/gce/gce_test.go @@ -50,6 +50,10 @@ func TestGetHostTag(t *testing.T) { host: "gke-test-ea6e8c80-node-8ytk", expected: "gke-test-ea6e8c80-node", }, + { + host: "kubernetes-minion-559o.c.PROJECT_NAME.internal", + expected: "kubernetes-minion", + }, } gce := &GCECloud{}