mirror of https://github.com/kubernetes/kops.git
protokube: Simplify CloudProvider initialization
This commit is contained in:
parent
ae52927a36
commit
9533de8546
|
@ -112,69 +112,32 @@ func run() error {
|
|||
|
||||
if gossip {
|
||||
var cloudProvider protokube.CloudProvider
|
||||
if cloud == "aws" {
|
||||
awsCloudProvider, err := protokube.NewAWSCloudProvider()
|
||||
if err != nil {
|
||||
klog.Errorf("Error initializing AWS: %q", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
cloudProvider = awsCloudProvider
|
||||
|
||||
} else if cloud == "digitalocean" {
|
||||
doCloudProvider, err := protokube.NewDOCloudProvider()
|
||||
if err != nil {
|
||||
klog.Errorf("Error initializing DigitalOcean: %q", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
cloudProvider = doCloudProvider
|
||||
|
||||
} else if cloud == "hetzner" {
|
||||
hetznerCloudProvider, err := protokube.NewHetznerCloudProvider()
|
||||
if err != nil {
|
||||
klog.Errorf("error initializing Hetzner Cloud: %q", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
cloudProvider = hetznerCloudProvider
|
||||
|
||||
} else if cloud == "gce" {
|
||||
gceCloudProvider, err := protokube.NewGCECloudProvider()
|
||||
if err != nil {
|
||||
klog.Errorf("Error initializing GCE: %q", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
cloudProvider = gceCloudProvider
|
||||
|
||||
} else if cloud == "openstack" {
|
||||
osCloudProvider, err := protokube.NewOpenStackCloudProvider()
|
||||
if err != nil {
|
||||
klog.Errorf("Error initializing OpenStack: %q", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
cloudProvider = osCloudProvider
|
||||
|
||||
} else if cloud == "azure" {
|
||||
azureVolumes, err := protokube.NewAzureCloudProvider()
|
||||
if err != nil {
|
||||
klog.Errorf("Error initializing Azure: %q", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
cloudProvider = azureVolumes
|
||||
|
||||
} else if cloud == "scaleway" {
|
||||
scwCloudProvider, err := protokube.NewScwCloudProvider()
|
||||
if err != nil {
|
||||
klog.Errorf("Error initializing Scaleway: %q", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
cloudProvider = scwCloudProvider
|
||||
|
||||
} else if cloud == "metal" {
|
||||
var err error
|
||||
switch cloud {
|
||||
case "aws":
|
||||
cloudProvider, err = protokube.NewAWSCloudProvider()
|
||||
case "digitalocean":
|
||||
cloudProvider, err = protokube.NewDOCloudProvider()
|
||||
case "hetzner":
|
||||
cloudProvider, err = protokube.NewHetznerCloudProvider()
|
||||
case "gce":
|
||||
cloudProvider, err = protokube.NewGCECloudProvider()
|
||||
case "openstack":
|
||||
cloudProvider, err = protokube.NewOpenStackCloudProvider()
|
||||
case "azure":
|
||||
cloudProvider, err = protokube.NewAzureCloudProvider()
|
||||
case "scaleway":
|
||||
cloudProvider, err = protokube.NewScwCloudProvider()
|
||||
case "metal":
|
||||
cloudProvider = nil
|
||||
} else {
|
||||
default:
|
||||
klog.Errorf("Unknown cloud %q", cloud)
|
||||
os.Exit(1)
|
||||
}
|
||||
if err != nil {
|
||||
klog.Errorf("Error initializing cloud %q: %s", cloud, err)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
if cloudProvider == nil {
|
||||
return fmt.Errorf("gossip not supported with cloudprovider %q", cloud)
|
||||
|
|
Loading…
Reference in New Issue