@@ -112,69 +112,32 @@ func run() error {
112
112
113
113
if gossip {
114
114
var cloudProvider protokube.CloudProvider
115
- if cloud == "aws" {
116
- awsCloudProvider , err := protokube .NewAWSCloudProvider ()
117
- if err != nil {
118
- klog .Errorf ("Error initializing AWS: %q" , err )
119
- os .Exit (1 )
120
- }
121
- cloudProvider = awsCloudProvider
122
-
123
- } else if cloud == "digitalocean" {
124
- doCloudProvider , err := protokube .NewDOCloudProvider ()
125
- if err != nil {
126
- klog .Errorf ("Error initializing DigitalOcean: %q" , err )
127
- os .Exit (1 )
128
- }
129
- cloudProvider = doCloudProvider
130
-
131
- } else if cloud == "hetzner" {
132
- hetznerCloudProvider , err := protokube .NewHetznerCloudProvider ()
133
- if err != nil {
134
- klog .Errorf ("error initializing Hetzner Cloud: %q" , err )
135
- os .Exit (1 )
136
- }
137
- cloudProvider = hetznerCloudProvider
138
-
139
- } else if cloud == "gce" {
140
- gceCloudProvider , err := protokube .NewGCECloudProvider ()
141
- if err != nil {
142
- klog .Errorf ("Error initializing GCE: %q" , err )
143
- os .Exit (1 )
144
- }
145
-
146
- cloudProvider = gceCloudProvider
147
-
148
- } else if cloud == "openstack" {
149
- osCloudProvider , err := protokube .NewOpenStackCloudProvider ()
150
- if err != nil {
151
- klog .Errorf ("Error initializing OpenStack: %q" , err )
152
- os .Exit (1 )
153
- }
154
- cloudProvider = osCloudProvider
155
-
156
- } else if cloud == "azure" {
157
- azureVolumes , err := protokube .NewAzureCloudProvider ()
158
- if err != nil {
159
- klog .Errorf ("Error initializing Azure: %q" , err )
160
- os .Exit (1 )
161
- }
162
- cloudProvider = azureVolumes
163
-
164
- } else if cloud == "scaleway" {
165
- scwCloudProvider , err := protokube .NewScwCloudProvider ()
166
- if err != nil {
167
- klog .Errorf ("Error initializing Scaleway: %q" , err )
168
- os .Exit (1 )
169
- }
170
- cloudProvider = scwCloudProvider
171
-
172
- } else if cloud == "metal" {
115
+ var err error
116
+ switch cloud {
117
+ case "aws" :
118
+ cloudProvider , err = protokube .NewAWSCloudProvider ()
119
+ case "digitalocean" :
120
+ cloudProvider , err = protokube .NewDOCloudProvider ()
121
+ case "hetzner" :
122
+ cloudProvider , err = protokube .NewHetznerCloudProvider ()
123
+ case "gce" :
124
+ cloudProvider , err = protokube .NewGCECloudProvider ()
125
+ case "openstack" :
126
+ cloudProvider , err = protokube .NewOpenStackCloudProvider ()
127
+ case "azure" :
128
+ cloudProvider , err = protokube .NewAzureCloudProvider ()
129
+ case "scaleway" :
130
+ cloudProvider , err = protokube .NewScwCloudProvider ()
131
+ case "metal" :
173
132
cloudProvider = nil
174
- } else {
133
+ default :
175
134
klog .Errorf ("Unknown cloud %q" , cloud )
176
135
os .Exit (1 )
177
136
}
137
+ if err != nil {
138
+ klog .Errorf ("Error initializing cloud %q: %s" , cloud , err )
139
+ os .Exit (1 )
140
+ }
178
141
179
142
if cloudProvider == nil {
180
143
return fmt .Errorf ("gossip not supported with cloudprovider %q" , cloud )
0 commit comments