@@ -179,6 +179,13 @@ func EnableOrDisableAddon(cc *config.ClusterConfig, name string, val string) err
179
179
exit .Error (reason .GuestCpConfig , "Error getting primary control plane" , err )
180
180
}
181
181
182
+ // maintain backwards compatibility for ingress with k8s < v1.19
183
+ if strings .HasPrefix (name , "ingress" ) && enable {
184
+ if err := supportLegacyIngress (addon , * cc ); err != nil {
185
+ return err
186
+ }
187
+ }
188
+
182
189
// Persist images even if the machine is running so starting gets the correct images.
183
190
images , customRegistries , err := assets .SelectAndPersistImages (addon , cc )
184
191
if err != nil {
@@ -229,9 +236,6 @@ func addonSpecificChecks(cc *config.ClusterConfig, name string, enable bool, run
229
236
out .Styled (style .Tip , `After the addon is enabled, please run "minikube tunnel" and your ingress resources would be available at "127.0.0.1"` )
230
237
}
231
238
}
232
- if err := supportLegacyIngress (cc ); err != nil {
233
- return false , err
234
- }
235
239
}
236
240
237
241
if strings .HasPrefix (name , "istio" ) && enable {
@@ -290,29 +294,20 @@ func isAddonAlreadySet(cc *config.ClusterConfig, addon *assets.Addon, enable boo
290
294
return false
291
295
}
292
296
293
- // maintain backwards compatibility with k8s < v1.19
294
- // by replacing images with old versions if custom ones are not already provided
295
- func supportLegacyIngress (cc * config.ClusterConfig ) error {
297
+ // maintain backwards compatibility for ingress with k8s < v1.19 by replacing default addon images with older versions
298
+ func supportLegacyIngress (addon * assets.Addon , cc config.ClusterConfig ) error {
296
299
v , err := util .ParseKubernetesVersion (cc .KubernetesConfig .KubernetesVersion )
297
300
if err != nil {
298
301
return errors .Wrap (err , "parsing Kubernetes version" )
299
302
}
300
303
if semver .MustParseRange ("<1.19.0" )(v ) {
301
- imgs : = map [string ]string {
304
+ addon . Images = map [string ]string {
302
305
// https://github.com/kubernetes/ingress-nginx/blob/0a2ec01eb4ec0e1b29c4b96eb838a2e7bfe0e9f6/deploy/static/provider/kind/deploy.yaml#L328
303
306
"IngressController" : "ingress-nginx/controller:v0.49.3@sha256:35fe394c82164efa8f47f3ed0be981b3f23da77175bbb8268a9ae438851c8324" ,
304
307
// issues: https://github.com/kubernetes/ingress-nginx/issues/7418 and https://github.com/jet/kube-webhook-certgen/issues/30
305
308
"KubeWebhookCertgenCreate" : "docker.io/jettech/kube-webhook-certgen:v1.5.1@sha256:950833e19ade18cd389d647efb88992a7cc077abedef343fa59e012d376d79b7" ,
306
309
"KubeWebhookCertgenPatch" : "docker.io/jettech/kube-webhook-certgen:v1.5.1@sha256:950833e19ade18cd389d647efb88992a7cc077abedef343fa59e012d376d79b7" ,
307
310
}
308
- if cc .CustomAddonImages == nil {
309
- cc .CustomAddonImages = map [string ]string {}
310
- }
311
- for name , path := range imgs {
312
- if _ , exists := cc .CustomAddonImages [name ]; ! exists {
313
- cc .CustomAddonImages [name ] = path
314
- }
315
- }
316
311
}
317
312
return nil
318
313
}
0 commit comments