Skip to content

Commit 3c28030

Browse files
authored
Merge pull request kubernetes#4047 from towca/jtuznik/mig-id
Cluster Autoscaler GCE: change the format of MIG id
2 parents 8dc1afb + a15d994 commit 3c28030

File tree

2 files changed

+12
-9
lines changed

2 files changed

+12
-9
lines changed

cluster-autoscaler/cloudprovider/gce/gce_url.go

+9-8
Original file line numberDiff line numberDiff line change
@@ -22,33 +22,34 @@ import (
2222
)
2323

2424
const (
25-
gceUrlSchema = "https"
26-
gceDomainSuffix = "googleapis.com/compute/v1/projects/"
27-
gcePrefix = gceUrlSchema + "://content." + gceDomainSuffix
25+
gceUrlSchema = "https"
26+
gceDomainSuffix = "googleapis.com/compute/v1/projects/"
27+
// Cluster Autoscaler previously used "content" instead of "www" here, for reasons unknown.
28+
gcePrefix = gceUrlSchema + "://www." + gceDomainSuffix
2829
instanceUrlTemplate = gcePrefix + "%s/zones/%s/instances/%s"
2930
migUrlTemplate = gcePrefix + "%s/zones/%s/instanceGroups/%s"
3031
)
3132

3233
// ParseMigUrl expects url in format:
33-
// https://content.googleapis.com/compute/v1/projects/<project-id>/zones/<zone>/instanceGroups/<name>
34+
// https://www.googleapis.com/compute/v1/projects/<project-id>/zones/<zone>/instanceGroups/<name>
3435
func ParseMigUrl(url string) (project string, zone string, name string, err error) {
3536
return parseGceUrl(url, "instanceGroups")
3637
}
3738

3839
// ParseIgmUrl expects url in format:
39-
// https://content.googleapis.com/compute/v1/projects/<project-id>/zones/<zone>/instanceGroupManagers/<name>
40+
// https://www.googleapis.com/compute/v1/projects/<project-id>/zones/<zone>/instanceGroupManagers/<name>
4041
func ParseIgmUrl(url string) (project string, zone string, name string, err error) {
4142
return parseGceUrl(url, "instanceGroupManagers")
4243
}
4344

4445
// ParseInstanceUrl expects url in format:
45-
// https://content.googleapis.com/compute/v1/projects/<project-id>/zones/<zone>/instances/<name>
46+
// https://www.googleapis.com/compute/v1/projects/<project-id>/zones/<zone>/instances/<name>
4647
func ParseInstanceUrl(url string) (project string, zone string, name string, err error) {
4748
return parseGceUrl(url, "instances")
4849
}
4950

5051
// ParseInstanceUrlRef expects url in format:
51-
// https://content.googleapis.com/compute/v1/projects/<project-id>/zones/<zone>/instances/<name>
52+
// https://www.googleapis.com/compute/v1/projects/<project-id>/zones/<zone>/instances/<name>
5253
// and returns a GceRef struct for it.
5354
func ParseInstanceUrlRef(url string) (GceRef, error) {
5455
project, zone, name, err := parseGceUrl(url, "instances")
@@ -73,7 +74,7 @@ func GenerateMigUrl(ref GceRef) string {
7374
}
7475

7576
func parseGceUrl(url, expectedResource string) (project string, zone string, name string, err error) {
76-
errMsg := fmt.Errorf("wrong url: expected format https://content.googleapis.com/compute/v1/projects/<project-id>/zones/<zone>/%s/<name>, got %s", expectedResource, url)
77+
errMsg := fmt.Errorf("wrong url: expected format https://www.googleapis.com/compute/v1/projects/<project-id>/zones/<zone>/%s/<name>, got %s", expectedResource, url)
7778
if !strings.Contains(url, gceDomainSuffix) {
7879
return "", "", "", errMsg
7980
}

cluster-autoscaler/cloudprovider/gce/gce_url_test.go

+3-1
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ func TestParseUrl(t *testing.T) {
2929
assert.Equal(t, "us-central1-b", zone)
3030
assert.Equal(t, "kubernetes-minion-group", name)
3131

32+
// Cluster Autoscaler previously used this format for MIG id (with "content" instead of "www"). Make sure it's still accepted
33+
// just to be safe.
3234
proj, zone, name, err = parseGceUrl("https://content.googleapis.com/compute/v1/projects/mwielgus-proj/zones/us-central1-b/instanceGroups/kubernetes-minion-group", "instanceGroups")
3335
assert.Nil(t, err)
3436
assert.Equal(t, "mwielgus-proj", proj)
@@ -38,6 +40,6 @@ func TestParseUrl(t *testing.T) {
3840
_, _, _, err = parseGceUrl("www.onet.pl", "instanceGroups")
3941
assert.NotNil(t, err)
4042

41-
_, _, _, err = parseGceUrl("https://content.googleapis.com/compute/vabc/projects/mwielgus-proj/zones/us-central1-b/instanceGroups/kubernetes-minion-group", "instanceGroups")
43+
_, _, _, err = parseGceUrl("https://www.googleapis.com/compute/vabc/projects/mwielgus-proj/zones/us-central1-b/instanceGroups/kubernetes-minion-group", "instanceGroups")
4244
assert.NotNil(t, err)
4345
}

0 commit comments

Comments
 (0)