diff --git a/staging/src/k8s.io/cloud-provider/app/core.go b/staging/src/k8s.io/cloud-provider/app/core.go index 6b8e961da00..0b939eb2b1f 100644 --- a/staging/src/k8s.io/cloud-provider/app/core.go +++ b/staging/src/k8s.io/cloud-provider/app/core.go @@ -99,15 +99,15 @@ func startServiceController(ctx *config.CompletedConfig, cloud cloudprovider.Int } func startRouteController(ctx *config.CompletedConfig, cloud cloudprovider.Interface, stopCh <-chan struct{}) (http.Handler, bool, error) { - if !ctx.ComponentConfig.KubeCloudShared.AllocateNodeCIDRs || !ctx.ComponentConfig.KubeCloudShared.ConfigureCloudRoutes { - klog.Infof("Will not configure cloud provider routes for allocate-node-cidrs: %v, configure-cloud-routes: %v.", ctx.ComponentConfig.KubeCloudShared.AllocateNodeCIDRs, ctx.ComponentConfig.KubeCloudShared.ConfigureCloudRoutes) + if !ctx.ComponentConfig.KubeCloudShared.ConfigureCloudRoutes { + klog.Infof("Will not configure cloud provider routes, --configure-cloud-routes: %v", ctx.ComponentConfig.KubeCloudShared.ConfigureCloudRoutes) return nil, false, nil } // If CIDRs should be allocated for pods and set on the CloudProvider, then start the route controller routes, ok := cloud.Routes() if !ok { - klog.Warning("configure-cloud-routes is set, but cloud provider does not support routes. Will not configure cloud provider routes.") + klog.Warning("--configure-cloud-routes is set, but cloud provider does not support routes. Will not configure cloud provider routes.") return nil, false, nil } diff --git a/staging/src/k8s.io/cloud-provider/fake/fake.go b/staging/src/k8s.io/cloud-provider/fake/fake.go index fa085ea5ec1..7748dbfd7e5 100644 --- a/staging/src/k8s.io/cloud-provider/fake/fake.go +++ b/staging/src/k8s.io/cloud-provider/fake/fake.go @@ -56,6 +56,12 @@ var _ cloudprovider.Clusters = (*Cloud)(nil) // Cloud is a test-double implementation of Interface, LoadBalancer, Instances, and Routes. It is useful for testing. type Cloud struct { + DisableInstances bool + DisableRoutes bool + DisableLoadBalancers bool + DisableZones bool + DisableClusters bool + Exists bool Err error @@ -126,7 +132,7 @@ func (f *Cloud) Master(ctx context.Context, name string) (string, error) { // Clusters returns a clusters interface. Also returns true if the interface is supported, false otherwise. func (f *Cloud) Clusters() (cloudprovider.Clusters, bool) { - return f, true + return f, !f.DisableClusters } // ProviderName returns the cloud provider ID. @@ -145,14 +151,14 @@ func (f *Cloud) HasClusterID() bool { // LoadBalancer returns a fake implementation of LoadBalancer. // Actually it just returns f itself. func (f *Cloud) LoadBalancer() (cloudprovider.LoadBalancer, bool) { - return f, true + return f, !f.DisableLoadBalancers } // Instances returns a fake implementation of Instances. // // Actually it just returns f itself. func (f *Cloud) Instances() (cloudprovider.Instances, bool) { - return f, true + return f, !f.DisableInstances } // InstancesV2 returns a fake implementation of InstancesV2. @@ -167,12 +173,12 @@ func (f *Cloud) InstancesV2() (cloudprovider.InstancesV2, bool) { // Zones returns a zones interface. Also returns true if the interface is supported, false otherwise. func (f *Cloud) Zones() (cloudprovider.Zones, bool) { - return f, true + return f, !f.DisableZones } // Routes returns a routes interface along with whether the interface is supported. func (f *Cloud) Routes() (cloudprovider.Routes, bool) { - return f, true + return f, !f.DisableRoutes } // GetLoadBalancer is a stub implementation of LoadBalancer.GetLoadBalancer. diff --git a/test/integration/serving/serving_test.go b/test/integration/serving/serving_test.go index de9ad11fd7b..95b914b058b 100644 --- a/test/integration/serving/serving_test.go +++ b/test/integration/serving/serving_test.go @@ -327,5 +327,7 @@ func intPtr(x int) *int { } func fakeCloudProviderFactory(io.Reader) (cloudprovider.Interface, error) { - return &fake.Cloud{}, nil + return &fake.Cloud{ + DisableRoutes: true, // disable routes for server tests, otherwise --cluster-cidr is required + }, nil }