remove region fetch
This commit is contained in:
parent
60bafdc92d
commit
91849f2450
1 changed files with 17 additions and 5 deletions
|
@ -13,6 +13,8 @@ import (
|
||||||
"golang.org/x/oauth2/google"
|
"golang.org/x/oauth2/google"
|
||||||
|
|
||||||
compute "google.golang.org/api/compute/v1"
|
compute "google.golang.org/api/compute/v1"
|
||||||
|
"k8s.io/kubernetes/pkg/cloudprovider"
|
||||||
|
"k8s.io/kubernetes/pkg/cloudprovider/providers/gce"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
@ -23,7 +25,7 @@ var (
|
||||||
instanceGroupName string
|
instanceGroupName string
|
||||||
|
|
||||||
s *compute.Service
|
s *compute.Service
|
||||||
region *compute.Region
|
g *gce.GCECloud
|
||||||
zones []*compute.Zone
|
zones []*compute.Zone
|
||||||
igs map[string]*compute.InstanceGroup
|
igs map[string]*compute.InstanceGroup
|
||||||
instances []*compute.Instance
|
instances []*compute.Instance
|
||||||
|
@ -54,6 +56,12 @@ func main() {
|
||||||
panic(fmt.Errorf("expected either %s or %s, actual: %v", balancingModeRATE, balancingModeUTIL, targetBalancingMode))
|
panic(fmt.Errorf("expected either %s or %s, actual: %v", balancingModeRATE, balancingModeUTIL, targetBalancingMode))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
switch regionName {
|
||||||
|
case "asia-east1", "asia-northeast1", "europe-west1", "us-central1", "us-east1", "us-west1":
|
||||||
|
default:
|
||||||
|
panic(fmt.Errorf("expected a valid GCP region, actual: %v", regionName))
|
||||||
|
}
|
||||||
|
|
||||||
igs = make(map[string]*compute.InstanceGroup)
|
igs = make(map[string]*compute.InstanceGroup)
|
||||||
|
|
||||||
tokenSource, err := google.DefaultTokenSource(
|
tokenSource, err := google.DefaultTokenSource(
|
||||||
|
@ -70,14 +78,14 @@ func main() {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get Region
|
cloudInterface, err := cloudprovider.GetCloudProvider("gce", nil)
|
||||||
region, err = s.Regions.Get(projectID, regionName).Do()
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
g = cloudInterface.(*gce.GCECloud)
|
||||||
|
|
||||||
// Get Zones
|
// Get Zones
|
||||||
zoneFilter := fmt.Sprintf("(region eq %s)", region.SelfLink)
|
zoneFilter := fmt.Sprintf("(region eq %s)", createRegionLink(regionName))
|
||||||
zoneList, err := s.Zones.List(projectID).Filter(zoneFilter).Do()
|
zoneList, err := s.Zones.List(projectID).Filter(zoneFilter).Do()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
|
@ -125,7 +133,6 @@ func main() {
|
||||||
}
|
}
|
||||||
|
|
||||||
bs := getBackendServices()
|
bs := getBackendServices()
|
||||||
fmt.Println("Region:", region.Name)
|
|
||||||
fmt.Println("Backend Services:", len(bs))
|
fmt.Println("Backend Services:", len(bs))
|
||||||
fmt.Println("Instance Groups:", len(igs))
|
fmt.Println("Instance Groups:", len(igs))
|
||||||
|
|
||||||
|
@ -241,6 +248,7 @@ func getBackendServices() (bs []*compute.BackendService) {
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, bsli := range bsl.Items {
|
for _, bsli := range bsl.Items {
|
||||||
|
// Ignore regional backend-services and only grab Kubernetes resources
|
||||||
if bsli.Region == "" && strings.HasPrefix(bsli.Name, "k8s-be-") {
|
if bsli.Region == "" && strings.HasPrefix(bsli.Name, "k8s-be-") {
|
||||||
bs = append(bs, bsli)
|
bs = append(bs, bsli)
|
||||||
}
|
}
|
||||||
|
@ -281,6 +289,10 @@ func createInstanceGroupLink(zone, igName string) string {
|
||||||
return fmt.Sprintf("https://www.googleapis.com/compute/v1/projects/%s/zones/%s/instanceGroups/%s", projectID, zone, igName)
|
return fmt.Sprintf("https://www.googleapis.com/compute/v1/projects/%s/zones/%s/instanceGroups/%s", projectID, zone, igName)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func createRegionLink(region string) string {
|
||||||
|
return fmt.Sprintf("https://www.googleapis.com/compute/v1/projects/nicksardo-playground/regions/%v", region)
|
||||||
|
}
|
||||||
|
|
||||||
func getResourceName(link string, resourceType string) string {
|
func getResourceName(link string, resourceType string) string {
|
||||||
s := strings.Split(link, "/")
|
s := strings.Split(link, "/")
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue