code: func (o *CloudControllerManagerOptions) Validate(allControllers, disabledByDefaultControllers []string) error {
  	errors := []error{}
  
  	errors = append(errors, o.Generic.Validate(allControllers, disabledByDefaultControllers)...)
  	errors = append(errors, o.KubeCloudShared.Validate()...)
  	errors = append(errors, o.ServiceController.Validate()...)
  	errors = append(errors, o.SecureServing.Validate()...)
  	errors = append(errors, o.InsecureServing.Validate()...)
  	errors = append(errors, o.Authentication.Validate()...)
  	errors = append(errors, o.Authorization.Validate()...)
  
  	if len(o.KubeCloudShared.CloudProvider.Name) == 0 {
  		errors = append(errors, fmt.Errorf("--cloud-provider cannot be empty"))
  	}
  
  	return utilerrors.NewAggregate(errors)
  }
docs: // Validate is used to validate config before launching the cloud controller manager