From eeeb59e71ab8e628f191145bf37ad93d23ef85cc Mon Sep 17 00:00:00 2001 From: Anish Ramasekar Date: Tue, 22 Oct 2019 13:55:13 -0700 Subject: [PATCH] update getmetadata to use unsafe read --- .../legacy-cloud-providers/azure/azure_instance_metadata.go | 5 +++-- .../k8s.io/legacy-cloud-providers/azure/azure_instances.go | 6 +++--- .../src/k8s.io/legacy-cloud-providers/azure/azure_zones.go | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_instance_metadata.go b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_instance_metadata.go index 40df24eab86..e91eeb98a0e 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_instance_metadata.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_instance_metadata.go @@ -144,8 +144,9 @@ func (ims *InstanceMetadataService) getInstanceMetadata(key string) (interface{} } // GetMetadata gets instance metadata from cache. -func (ims *InstanceMetadataService) GetMetadata() (*InstanceMetadata, error) { - cache, err := ims.imsCache.Get(metadataCacheKey, cachedData) +// crt determines if we can get data from stalled cache/need fresh if cache expired. +func (ims *InstanceMetadataService) GetMetadata(crt cacheReadType) (*InstanceMetadata, error) { + cache, err := ims.imsCache.Get(metadataCacheKey, crt) if err != nil { return nil, err } diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_instances.go b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_instances.go index ae37614dc82..dfbda140229 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_instances.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_instances.go @@ -73,7 +73,7 @@ func (az *Cloud) NodeAddresses(ctx context.Context, name types.NodeName) ([]v1.N } if az.UseInstanceMetadata { - metadata, err := az.metadata.GetMetadata() + metadata, err := az.metadata.GetMetadata(allowUnsafeRead) if err != nil { return nil, err } @@ -259,7 +259,7 @@ func (az *Cloud) InstanceID(ctx context.Context, name types.NodeName) (string, e } if az.UseInstanceMetadata { - metadata, err := az.metadata.GetMetadata() + metadata, err := az.metadata.GetMetadata(allowUnsafeRead) if err != nil { return "", err } @@ -346,7 +346,7 @@ func (az *Cloud) InstanceType(ctx context.Context, name types.NodeName) (string, } if az.UseInstanceMetadata { - metadata, err := az.metadata.GetMetadata() + metadata, err := az.metadata.GetMetadata(allowUnsafeRead) if err != nil { return "", err } diff --git a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_zones.go b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_zones.go index e5c3c889058..a52dba7e450 100644 --- a/staging/src/k8s.io/legacy-cloud-providers/azure/azure_zones.go +++ b/staging/src/k8s.io/legacy-cloud-providers/azure/azure_zones.go @@ -53,7 +53,7 @@ func (az *Cloud) GetZoneID(zoneLabel string) string { // If the node is not running with availability zones, then it will fall back to fault domain. func (az *Cloud) GetZone(ctx context.Context) (cloudprovider.Zone, error) { if az.UseInstanceMetadata { - metadata, err := az.metadata.GetMetadata() + metadata, err := az.metadata.GetMetadata(allowUnsafeRead) if err != nil { return cloudprovider.Zone{}, err }