Skip to content

Commit ae52927

Browse files
committed
protokube: Initialize CloudProvider only with Gossip
1 parent 6ba41fb commit ae52927

File tree

1 file changed

+65
-67
lines changed

1 file changed

+65
-67
lines changed

protokube/cmd/protokube/main.go

Lines changed: 65 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -91,71 +91,6 @@ func run() error {
9191
flags.AddGoFlagSet(flag.CommandLine)
9292
flags.Parse(os.Args)
9393

94-
var cloudProvider protokube.CloudProvider
95-
if cloud == "aws" {
96-
awsCloudProvider, err := protokube.NewAWSCloudProvider()
97-
if err != nil {
98-
klog.Errorf("Error initializing AWS: %q", err)
99-
os.Exit(1)
100-
}
101-
cloudProvider = awsCloudProvider
102-
103-
} else if cloud == "digitalocean" {
104-
doCloudProvider, err := protokube.NewDOCloudProvider()
105-
if err != nil {
106-
klog.Errorf("Error initializing DigitalOcean: %q", err)
107-
os.Exit(1)
108-
}
109-
cloudProvider = doCloudProvider
110-
111-
} else if cloud == "hetzner" {
112-
hetznerCloudProvider, err := protokube.NewHetznerCloudProvider()
113-
if err != nil {
114-
klog.Errorf("error initializing Hetzner Cloud: %q", err)
115-
os.Exit(1)
116-
}
117-
cloudProvider = hetznerCloudProvider
118-
119-
} else if cloud == "gce" {
120-
gceCloudProvider, err := protokube.NewGCECloudProvider()
121-
if err != nil {
122-
klog.Errorf("Error initializing GCE: %q", err)
123-
os.Exit(1)
124-
}
125-
126-
cloudProvider = gceCloudProvider
127-
128-
} else if cloud == "openstack" {
129-
osCloudProvider, err := protokube.NewOpenStackCloudProvider()
130-
if err != nil {
131-
klog.Errorf("Error initializing OpenStack: %q", err)
132-
os.Exit(1)
133-
}
134-
cloudProvider = osCloudProvider
135-
136-
} else if cloud == "azure" {
137-
azureVolumes, err := protokube.NewAzureCloudProvider()
138-
if err != nil {
139-
klog.Errorf("Error initializing Azure: %q", err)
140-
os.Exit(1)
141-
}
142-
cloudProvider = azureVolumes
143-
144-
} else if cloud == "scaleway" {
145-
scwCloudProvider, err := protokube.NewScwCloudProvider()
146-
if err != nil {
147-
klog.Errorf("Error initializing Scaleway: %q", err)
148-
os.Exit(1)
149-
}
150-
cloudProvider = scwCloudProvider
151-
152-
} else if cloud == "metal" {
153-
cloudProvider = nil
154-
} else {
155-
klog.Errorf("Unknown cloud %q", cloud)
156-
os.Exit(1)
157-
}
158-
15994
if dnsInternalSuffix == "" {
16095
if clusterID == "" {
16196
return fmt.Errorf("cluster-id is required when dns-internal-suffix is not set")
@@ -164,7 +99,6 @@ func run() error {
16499
dnsInternalSuffix = ".internal." + clusterID
165100
klog.Infof("Setting dns-internal-suffix to %q", dnsInternalSuffix)
166101
}
167-
168102
// Make sure it's actually a suffix (starts with .)
169103
if !strings.HasPrefix(dnsInternalSuffix, ".") {
170104
dnsInternalSuffix = "." + dnsInternalSuffix
@@ -174,10 +108,74 @@ func run() error {
174108
if containerized {
175109
rootfs = "/rootfs/"
176110
}
177-
178111
protokube.RootFS = rootfs
179112

180113
if gossip {
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" {
173+
cloudProvider = nil
174+
} else {
175+
klog.Errorf("Unknown cloud %q", cloud)
176+
os.Exit(1)
177+
}
178+
181179
if cloudProvider == nil {
182180
return fmt.Errorf("gossip not supported with cloudprovider %q", cloud)
183181
}

0 commit comments

Comments
 (0)