From 0f5013b71532560f0ea0417346fb99f8db1f7fde Mon Sep 17 00:00:00 2001 From: Davanum Srinivas Date: Wed, 10 Jan 2018 07:30:47 -0500 Subject: [PATCH] Better check for GCE VM we should do what is being done in GoogleCloudPlatform/google-cloud-go: https://github.com/GoogleCloudPlatform/google-cloud-go/blob/master/compute/metadata/metadata.go#L259-L267 Looks like folks are reusing appliances which end up with ``` $ cat /sys/class/dmi/id/product_name Google Search Appliance ``` --- pkg/credentialprovider/gcp/metadata.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkg/credentialprovider/gcp/metadata.go b/pkg/credentialprovider/gcp/metadata.go index 0216e2a80e..4c668d0b38 100644 --- a/pkg/credentialprovider/gcp/metadata.go +++ b/pkg/credentialprovider/gcp/metadata.go @@ -39,7 +39,6 @@ const ( metadataEmail = metadataUrl + "instance/service-accounts/default/email" storageScopePrefix = "https://www.googleapis.com/auth/devstorage" cloudPlatformScopePrefix = "https://www.googleapis.com/auth/cloud-platform" - googleProductName = "Google" defaultServiceAccount = "default/" ) @@ -121,7 +120,8 @@ func onGCEVM() bool { glog.V(2).Infof("Error while reading product_name: %v", err) return false } - return strings.Contains(string(data), googleProductName) + name := strings.TrimSpace(string(data)) + return name == "Google" || name == "Google Compute Engine" } // Enabled implements DockerConfigProvider for all of the Google implementations.