Merge pull request #3787 from yaroslava-serdiuk/cluster-autoscaler-release-1.17

Cherry-pick #3722: update generic labels for GCE
This commit is contained in:
Kubernetes Prow Robot 2020-12-30 00:43:49 -08:00 committed by GitHub
commit 873ad55d8c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 0 deletions

View File

@ -37,6 +37,10 @@ import (
// GceTemplateBuilder builds templates for GCE nodes.
type GceTemplateBuilder struct{}
// TODO: This should be imported from sigs.k8s.io/gcp-compute-persistent-disk-csi-driver/pkg/common/constants.go
// This key is applicable to both GCE and GKE
const gceCSITopologyKeyZone = "topology.gke.io/zone"
func (t *GceTemplateBuilder) getAcceleratorCount(accelerators []*gce.AcceleratorConfig) int64 {
count := int64(0)
for _, accelerator := range accelerators {
@ -180,12 +184,16 @@ func BuildGenericLabels(ref GceRef, machineType string, nodeName string) (map[st
result[kubeletapis.LabelOS] = cloudprovider.DefaultOS
result[apiv1.LabelInstanceType] = machineType
result[apiv1.LabelInstanceTypeStable] = machineType
ix := strings.LastIndex(ref.Zone, "-")
if ix == -1 {
return nil, fmt.Errorf("unexpected zone: %s", ref.Zone)
}
result[apiv1.LabelZoneRegion] = ref.Zone[:ix]
result[apiv1.LabelZoneRegionStable] = ref.Zone[:ix]
result[apiv1.LabelZoneFailureDomain] = ref.Zone
result[apiv1.LabelZoneFailureDomainStable] = ref.Zone
result[gceCSITopologyKeyZone] = ref.Zone
result[apiv1.LabelHostname] = nodeName
return result, nil
}

View File

@ -134,7 +134,10 @@ func TestBuildGenericLabels(t *testing.T) {
"n1-standard-8", "sillyname")
assert.Nil(t, err)
assert.Equal(t, "us-central1", labels[apiv1.LabelZoneRegion])
assert.Equal(t, "us-central1", labels[apiv1.LabelZoneRegionStable])
assert.Equal(t, "us-central1-b", labels[apiv1.LabelZoneFailureDomain])
assert.Equal(t, "us-central1-b", labels[apiv1.LabelZoneFailureDomainStable])
assert.Equal(t, "us-central1-b", labels[gceCSITopologyKeyZone])
assert.Equal(t, "sillyname", labels[apiv1.LabelHostname])
assert.Equal(t, "n1-standard-8", labels[apiv1.LabelInstanceType])
assert.Equal(t, cloudprovider.DefaultArch, labels[kubeletapis.LabelArch])