From be4a437e71f11f5d2467ae515a2487a58b9e4ecb Mon Sep 17 00:00:00 2001 From: stewart-yu Date: Tue, 4 Sep 2018 17:57:13 +0800 Subject: [PATCH 1/8] [kube-controller-manager] just only remove struct and default about KubeControllerManagerConfiguration from pkg/apis/componentconfig --- pkg/apis/componentconfig/types.go | 390 ----------------- pkg/apis/componentconfig/v1alpha1/defaults.go | 185 -------- pkg/apis/componentconfig/v1alpha1/types.go | 390 ----------------- pkg/controller/apis/config/types.go | 409 +++++++++++++++++ .../apis/config/v1alpha1/defaults.go | 214 +++++++++ .../config/v1alpha1/types.go | 410 ++++++++++++++++++ 6 files changed, 1033 insertions(+), 965 deletions(-) create mode 100644 pkg/controller/apis/config/types.go create mode 100644 pkg/controller/apis/config/v1alpha1/defaults.go create mode 100644 staging/src/k8s.io/kube-controller-manager/config/v1alpha1/types.go diff --git a/pkg/apis/componentconfig/types.go b/pkg/apis/componentconfig/types.go index 7e3cf8a8f86..8dfc0660209 100644 --- a/pkg/apis/componentconfig/types.go +++ b/pkg/apis/componentconfig/types.go @@ -22,80 +22,6 @@ import ( apiserverconfig "k8s.io/apiserver/pkg/apis/config" ) -type GroupResource struct { - // group is the group portion of the GroupResource. - Group string - // resource is the resource portion of the GroupResource. - Resource string -} - -// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object - -type KubeControllerManagerConfiguration struct { - metav1.TypeMeta - - // Generic holds configuration for a generic controller-manager - Generic GenericControllerManagerConfiguration - // KubeCloudSharedConfiguration holds configuration for shared related features - // both in cloud controller manager and kube-controller manager. - KubeCloudShared KubeCloudSharedConfiguration - - // AttachDetachControllerConfiguration holds configuration for - // AttachDetachController related features. - AttachDetachController AttachDetachControllerConfiguration - // CSRSigningControllerConfiguration holds configuration for - // CSRSigningController related features. - CSRSigningController CSRSigningControllerConfiguration - // DaemonSetControllerConfiguration holds configuration for DaemonSetController - // related features. - DaemonSetController DaemonSetControllerConfiguration - // DeploymentControllerConfiguration holds configuration for - // DeploymentController related features. - DeploymentController DeploymentControllerConfiguration - // DeprecatedControllerConfiguration holds configuration for some deprecated - // features. - DeprecatedController DeprecatedControllerConfiguration - // EndpointControllerConfiguration holds configuration for EndpointController - // related features. - EndpointController EndpointControllerConfiguration - // GarbageCollectorControllerConfiguration holds configuration for - // GarbageCollectorController related features. - GarbageCollectorController GarbageCollectorControllerConfiguration - // HPAControllerConfiguration holds configuration for HPAController related features. - HPAController HPAControllerConfiguration - // JobControllerConfiguration holds configuration for JobController related features. - JobController JobControllerConfiguration - // NamespaceControllerConfiguration holds configuration for NamespaceController - // related features. - NamespaceController NamespaceControllerConfiguration - // NodeIPAMControllerConfiguration holds configuration for NodeIPAMController - // related features. - NodeIPAMController NodeIPAMControllerConfiguration - // NodeLifecycleControllerConfiguration holds configuration for - // NodeLifecycleController related features. - NodeLifecycleController NodeLifecycleControllerConfiguration - // PersistentVolumeBinderControllerConfiguration holds configuration for - // PersistentVolumeBinderController related features. - PersistentVolumeBinderController PersistentVolumeBinderControllerConfiguration - // PodGCControllerConfiguration holds configuration for PodGCController - // related features. - PodGCController PodGCControllerConfiguration - // ReplicaSetControllerConfiguration holds configuration for ReplicaSet related features. - ReplicaSetController ReplicaSetControllerConfiguration - // ReplicationControllerConfiguration holds configuration for - // ReplicationController related features. - ReplicationController ReplicationControllerConfiguration - // ResourceQuotaControllerConfiguration holds configuration for - // ResourceQuotaController related features. - ResourceQuotaController ResourceQuotaControllerConfiguration - // SAControllerConfiguration holds configuration for ServiceAccountController - // related features. - SAController SAControllerConfiguration - // ServiceControllerConfiguration holds configuration for ServiceController - // related features. - ServiceController ServiceControllerConfiguration -} - // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type CloudControllerManagerConfiguration struct { @@ -113,319 +39,3 @@ type CloudControllerManagerConfiguration struct { // NodeStatusUpdateFrequency is the frequency at which the controller updates nodes' status NodeStatusUpdateFrequency metav1.Duration } - -type GenericControllerManagerConfiguration struct { - // port is the port that the controller-manager's http service runs on. - Port int32 - // address is the IP address to serve on (set to 0.0.0.0 for all interfaces). - Address string - // minResyncPeriod is the resync period in reflectors; will be random between - // minResyncPeriod and 2*minResyncPeriod. - MinResyncPeriod metav1.Duration - // ClientConnection specifies the kubeconfig file and client connection - // settings for the proxy server to use when communicating with the apiserver. - ClientConnection apimachineryconfig.ClientConnectionConfiguration - // How long to wait between starting controller managers - ControllerStartInterval metav1.Duration - // leaderElection defines the configuration of leader election client. - LeaderElection apiserverconfig.LeaderElectionConfiguration - // Controllers is the list of controllers to enable or disable - // '*' means "all enabled by default controllers" - // 'foo' means "enable 'foo'" - // '-foo' means "disable 'foo'" - // first item for a particular name wins - Controllers []string - // DebuggingConfiguration holds configuration for Debugging related features. - Debugging apiserverconfig.DebuggingConfiguration -} - -type KubeCloudSharedConfiguration struct { - // CloudProviderConfiguration holds configuration for CloudProvider related features. - CloudProvider CloudProviderConfiguration - // externalCloudVolumePlugin specifies the plugin to use when cloudProvider is "external". - // It is currently used by the in repo cloud providers to handle node and volume control in the KCM. - ExternalCloudVolumePlugin string - // useServiceAccountCredentials indicates whether controllers should be run with - // individual service account credentials. - UseServiceAccountCredentials bool - // run with untagged cloud instances - AllowUntaggedCloud bool - // routeReconciliationPeriod is the period for reconciling routes created for Nodes by cloud provider.. - RouteReconciliationPeriod metav1.Duration - // nodeMonitorPeriod is the period for syncing NodeStatus in NodeController. - NodeMonitorPeriod metav1.Duration - // clusterName is the instance prefix for the cluster. - ClusterName string - // clusterCIDR is CIDR Range for Pods in cluster. - ClusterCIDR string - // AllocateNodeCIDRs enables CIDRs for Pods to be allocated and, if - // ConfigureCloudRoutes is true, to be set on the cloud provider. - AllocateNodeCIDRs bool - // CIDRAllocatorType determines what kind of pod CIDR allocator will be used. - CIDRAllocatorType string - // configureCloudRoutes enables CIDRs allocated with allocateNodeCIDRs - // to be configured on the cloud provider. - ConfigureCloudRoutes bool - // nodeSyncPeriod is the period for syncing nodes from cloudprovider. Longer - // periods will result in fewer calls to cloud provider, but may delay addition - // of new nodes to cluster. - NodeSyncPeriod metav1.Duration -} - -type AttachDetachControllerConfiguration struct { - // Reconciler runs a periodic loop to reconcile the desired state of the with - // the actual state of the world by triggering attach detach operations. - // This flag enables or disables reconcile. Is false by default, and thus enabled. - DisableAttachDetachReconcilerSync bool - // ReconcilerSyncLoopPeriod is the amount of time the reconciler sync states loop - // wait between successive executions. Is set to 5 sec by default. - ReconcilerSyncLoopPeriod metav1.Duration -} - -type CloudProviderConfiguration struct { - // Name is the provider for cloud services. - Name string - // cloudConfigFile is the path to the cloud provider configuration file. - CloudConfigFile string -} - -type CSRSigningControllerConfiguration struct { - // clusterSigningCertFile is the filename containing a PEM-encoded - // X509 CA certificate used to issue cluster-scoped certificates - ClusterSigningCertFile string - // clusterSigningCertFile is the filename containing a PEM-encoded - // RSA or ECDSA private key used to issue cluster-scoped certificates - ClusterSigningKeyFile string - // clusterSigningDuration is the length of duration signed certificates - // will be given. - ClusterSigningDuration metav1.Duration -} - -type DaemonSetControllerConfiguration struct { - // concurrentDaemonSetSyncs is the number of daemonset objects that are - // allowed to sync concurrently. Larger number = more responsive daemonset, - // but more CPU (and network) load. - ConcurrentDaemonSetSyncs int32 -} - -type DeploymentControllerConfiguration struct { - // concurrentDeploymentSyncs is the number of deployment objects that are - // allowed to sync concurrently. Larger number = more responsive deployments, - // but more CPU (and network) load. - ConcurrentDeploymentSyncs int32 - // deploymentControllerSyncPeriod is the period for syncing the deployments. - DeploymentControllerSyncPeriod metav1.Duration -} - -type DeprecatedControllerConfiguration struct { - // DEPRECATED: deletingPodsQps is the number of nodes per second on which pods are deleted in - // case of node failure. - DeletingPodsQps float32 - // DEPRECATED: deletingPodsBurst is the number of nodes on which pods are bursty deleted in - // case of node failure. For more details look into RateLimiter. - DeletingPodsBurst int32 - // registerRetryCount is the number of retries for initial node registration. - // Retry interval equals node-sync-period. - RegisterRetryCount int32 -} - -type EndpointControllerConfiguration struct { - // concurrentEndpointSyncs is the number of endpoint syncing operations - // that will be done concurrently. Larger number = faster endpoint updating, - // but more CPU (and network) load. - ConcurrentEndpointSyncs int32 -} - -type GarbageCollectorControllerConfiguration struct { - // enables the generic garbage collector. MUST be synced with the - // corresponding flag of the kube-apiserver. WARNING: the generic garbage - // collector is an alpha feature. - EnableGarbageCollector bool - // concurrentGCSyncs is the number of garbage collector workers that are - // allowed to sync concurrently. - ConcurrentGCSyncs int32 - // gcIgnoredResources is the list of GroupResources that garbage collection should ignore. - GCIgnoredResources []GroupResource -} - -type HPAControllerConfiguration struct { - // horizontalPodAutoscalerSyncPeriod is the period for syncing the number of - // pods in horizontal pod autoscaler. - HorizontalPodAutoscalerSyncPeriod metav1.Duration - // horizontalPodAutoscalerUpscaleForbiddenWindow is a period after which next upscale allowed. - HorizontalPodAutoscalerUpscaleForbiddenWindow metav1.Duration - // horizontalPodAutoscalerDownscaleForbiddenWindow is a period after which next downscale allowed. - HorizontalPodAutoscalerDownscaleForbiddenWindow metav1.Duration - // HorizontalPodAutoscalerDowncaleStabilizationWindow is a period for which autoscaler will look - // backwards and not scale down below any recommendation it made during that period. - HorizontalPodAutoscalerDownscaleStabilizationWindow metav1.Duration - // horizontalPodAutoscalerTolerance is the tolerance for when - // resource usage suggests upscaling/downscaling - HorizontalPodAutoscalerTolerance float64 - // HorizontalPodAutoscalerUseRESTClients causes the HPA controller to use REST clients - // through the kube-aggregator when enabled, instead of using the legacy metrics client - // through the API server proxy. - HorizontalPodAutoscalerUseRESTClients bool - // HorizontalPodAutoscalerCPUInitializationPeriod is the period after pod start when CPU samples - // might be skipped. - HorizontalPodAutoscalerCPUInitializationPeriod metav1.Duration - // HorizontalPodAutoscalerInitialReadinessDelay is period after pod start during which readiness - // changes are treated as readiness being set for the first time. The only effect of this is that - // HPA will disregard CPU samples from unready pods that had last readiness change during that - // period. - HorizontalPodAutoscalerInitialReadinessDelay metav1.Duration -} - -type JobControllerConfiguration struct { - // concurrentJobSyncs is the number of job objects that are - // allowed to sync concurrently. Larger number = more responsive jobs, - // but more CPU (and network) load. - ConcurrentJobSyncs int32 -} - -type NamespaceControllerConfiguration struct { - // namespaceSyncPeriod is the period for syncing namespace life-cycle - // updates. - NamespaceSyncPeriod metav1.Duration - // concurrentNamespaceSyncs is the number of namespace objects that are - // allowed to sync concurrently. - ConcurrentNamespaceSyncs int32 -} - -type NodeIPAMControllerConfiguration struct { - // serviceCIDR is CIDR Range for Services in cluster. - ServiceCIDR string - // NodeCIDRMaskSize is the mask size for node cidr in cluster. - NodeCIDRMaskSize int32 -} - -type NodeLifecycleControllerConfiguration struct { - // If set to true enables NoExecute Taints and will evict all not-tolerating - // Pod running on Nodes tainted with this kind of Taints. - EnableTaintManager bool - // nodeEvictionRate is the number of nodes per second on which pods are deleted in case of node failure when a zone is healthy - NodeEvictionRate float32 - // secondaryNodeEvictionRate is the number of nodes per second on which pods are deleted in case of node failure when a zone is unhealthy - SecondaryNodeEvictionRate float32 - // nodeStartupGracePeriod is the amount of time which we allow starting a node to - // be unresponsive before marking it unhealthy. - NodeStartupGracePeriod metav1.Duration - // nodeMontiorGracePeriod is the amount of time which we allow a running node to be - // unresponsive before marking it unhealthy. Must be N times more than kubelet's - // nodeStatusUpdateFrequency, where N means number of retries allowed for kubelet - // to post node status. - NodeMonitorGracePeriod metav1.Duration - // podEvictionTimeout is the grace period for deleting pods on failed nodes. - PodEvictionTimeout metav1.Duration - // secondaryNodeEvictionRate is implicitly overridden to 0 for clusters smaller than or equal to largeClusterSizeThreshold - LargeClusterSizeThreshold int32 - // Zone is treated as unhealthy in nodeEvictionRate and secondaryNodeEvictionRate when at least - // unhealthyZoneThreshold (no less than 3) of Nodes in the zone are NotReady - UnhealthyZoneThreshold float32 -} - -type PersistentVolumeBinderControllerConfiguration struct { - // pvClaimBinderSyncPeriod is the period for syncing persistent volumes - // and persistent volume claims. - PVClaimBinderSyncPeriod metav1.Duration - // volumeConfiguration holds configuration for volume related features. - VolumeConfiguration VolumeConfiguration -} - -type PodGCControllerConfiguration struct { - // terminatedPodGCThreshold is the number of terminated pods that can exist - // before the terminated pod garbage collector starts deleting terminated pods. - // If <= 0, the terminated pod garbage collector is disabled. - TerminatedPodGCThreshold int32 -} - -type ReplicaSetControllerConfiguration struct { - // concurrentRSSyncs is the number of replica sets that are allowed to sync - // concurrently. Larger number = more responsive replica management, but more - // CPU (and network) load. - ConcurrentRSSyncs int32 -} - -type ReplicationControllerConfiguration struct { - // concurrentRCSyncs is the number of replication controllers that are - // allowed to sync concurrently. Larger number = more responsive replica - // management, but more CPU (and network) load. - ConcurrentRCSyncs int32 -} - -type ResourceQuotaControllerConfiguration struct { - // resourceQuotaSyncPeriod is the period for syncing quota usage status - // in the system. - ResourceQuotaSyncPeriod metav1.Duration - // concurrentResourceQuotaSyncs is the number of resource quotas that are - // allowed to sync concurrently. Larger number = more responsive quota - // management, but more CPU (and network) load. - ConcurrentResourceQuotaSyncs int32 -} - -type SAControllerConfiguration struct { - // serviceAccountKeyFile is the filename containing a PEM-encoded private RSA key - // used to sign service account tokens. - ServiceAccountKeyFile string - // concurrentSATokenSyncs is the number of service account token syncing operations - // that will be done concurrently. - ConcurrentSATokenSyncs int32 - // rootCAFile is the root certificate authority will be included in service - // account's token secret. This must be a valid PEM-encoded CA bundle. - RootCAFile string -} - -type ServiceControllerConfiguration struct { - // concurrentServiceSyncs is the number of services that are - // allowed to sync concurrently. Larger number = more responsive service - // management, but more CPU (and network) load. - ConcurrentServiceSyncs int32 -} - -// VolumeConfiguration contains *all* enumerated flags meant to configure all volume -// plugins. From this config, the controller-manager binary will create many instances of -// volume.VolumeConfig, each containing only the configuration needed for that plugin which -// are then passed to the appropriate plugin. The ControllerManager binary is the only part -// of the code which knows what plugins are supported and which flags correspond to each plugin. -type VolumeConfiguration struct { - // enableHostPathProvisioning enables HostPath PV provisioning when running without a - // cloud provider. This allows testing and development of provisioning features. HostPath - // provisioning is not supported in any way, won't work in a multi-node cluster, and - // should not be used for anything other than testing or development. - EnableHostPathProvisioning bool - // enableDynamicProvisioning enables the provisioning of volumes when running within an environment - // that supports dynamic provisioning. Defaults to true. - EnableDynamicProvisioning bool - // persistentVolumeRecyclerConfiguration holds configuration for persistent volume plugins. - PersistentVolumeRecyclerConfiguration PersistentVolumeRecyclerConfiguration - // volumePluginDir is the full path of the directory in which the flex - // volume plugin should search for additional third party volume plugins - FlexVolumePluginDir string -} - -type PersistentVolumeRecyclerConfiguration struct { - // maximumRetry is number of retries the PV recycler will execute on failure to recycle - // PV. - MaximumRetry int32 - // minimumTimeoutNFS is the minimum ActiveDeadlineSeconds to use for an NFS Recycler - // pod. - MinimumTimeoutNFS int32 - // podTemplateFilePathNFS is the file path to a pod definition used as a template for - // NFS persistent volume recycling - PodTemplateFilePathNFS string - // incrementTimeoutNFS is the increment of time added per Gi to ActiveDeadlineSeconds - // for an NFS scrubber pod. - IncrementTimeoutNFS int32 - // podTemplateFilePathHostPath is the file path to a pod definition used as a template for - // HostPath persistent volume recycling. This is for development and testing only and - // will not work in a multi-node cluster. - PodTemplateFilePathHostPath string - // minimumTimeoutHostPath is the minimum ActiveDeadlineSeconds to use for a HostPath - // Recycler pod. This is for development and testing only and will not work in a multi-node - // cluster. - MinimumTimeoutHostPath int32 - // incrementTimeoutHostPath is the increment of time added per Gi to ActiveDeadlineSeconds - // for a HostPath scrubber pod. This is for development and testing only and will not work - // in a multi-node cluster. - IncrementTimeoutHostPath int32 -} diff --git a/pkg/apis/componentconfig/v1alpha1/defaults.go b/pkg/apis/componentconfig/v1alpha1/defaults.go index d43432797a1..15476457044 100644 --- a/pkg/apis/componentconfig/v1alpha1/defaults.go +++ b/pkg/apis/componentconfig/v1alpha1/defaults.go @@ -30,125 +30,6 @@ func addDefaultingFuncs(scheme *kruntime.Scheme) error { return RegisterDefaults(scheme) } -func SetDefaults_KubeControllerManagerConfiguration(obj *KubeControllerManagerConfiguration) { - zero := metav1.Duration{} - if obj.EndpointController.ConcurrentEndpointSyncs == 0 { - obj.EndpointController.ConcurrentEndpointSyncs = 5 - } - if obj.ServiceController.ConcurrentServiceSyncs == 0 { - obj.ServiceController.ConcurrentServiceSyncs = 1 - } - if obj.ReplicationController.ConcurrentRCSyncs == 0 { - obj.ReplicationController.ConcurrentRCSyncs = 5 - } - if obj.ReplicaSetController.ConcurrentRSSyncs == 0 { - obj.ReplicaSetController.ConcurrentRSSyncs = 5 - } - if obj.DaemonSetController.ConcurrentDaemonSetSyncs == 0 { - obj.DaemonSetController.ConcurrentDaemonSetSyncs = 2 - } - if obj.JobController.ConcurrentJobSyncs == 0 { - obj.JobController.ConcurrentJobSyncs = 5 - } - if obj.ResourceQuotaController.ConcurrentResourceQuotaSyncs == 0 { - obj.ResourceQuotaController.ConcurrentResourceQuotaSyncs = 5 - } - if obj.DeploymentController.ConcurrentDeploymentSyncs == 0 { - obj.DeploymentController.ConcurrentDeploymentSyncs = 5 - } - if obj.NamespaceController.ConcurrentNamespaceSyncs == 0 { - obj.NamespaceController.ConcurrentNamespaceSyncs = 10 - } - if obj.SAController.ConcurrentSATokenSyncs == 0 { - obj.SAController.ConcurrentSATokenSyncs = 5 - } - if obj.ResourceQuotaController.ResourceQuotaSyncPeriod == zero { - obj.ResourceQuotaController.ResourceQuotaSyncPeriod = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.NamespaceController.NamespaceSyncPeriod == zero { - obj.NamespaceController.NamespaceSyncPeriod = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.PersistentVolumeBinderController.PVClaimBinderSyncPeriod == zero { - obj.PersistentVolumeBinderController.PVClaimBinderSyncPeriod = metav1.Duration{Duration: 15 * time.Second} - } - if obj.HPAController.HorizontalPodAutoscalerSyncPeriod == zero { - obj.HPAController.HorizontalPodAutoscalerSyncPeriod = metav1.Duration{Duration: 15 * time.Second} - } - if obj.HPAController.HorizontalPodAutoscalerUpscaleForbiddenWindow == zero { - obj.HPAController.HorizontalPodAutoscalerUpscaleForbiddenWindow = metav1.Duration{Duration: 3 * time.Minute} - } - if obj.HPAController.HorizontalPodAutoscalerDownscaleStabilizationWindow == zero { - obj.HPAController.HorizontalPodAutoscalerDownscaleStabilizationWindow = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.HPAController.HorizontalPodAutoscalerCPUInitializationPeriod == zero { - obj.HPAController.HorizontalPodAutoscalerCPUInitializationPeriod = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.HPAController.HorizontalPodAutoscalerInitialReadinessDelay == zero { - obj.HPAController.HorizontalPodAutoscalerInitialReadinessDelay = metav1.Duration{Duration: 30 * time.Second} - } - if obj.HPAController.HorizontalPodAutoscalerDownscaleForbiddenWindow == zero { - obj.HPAController.HorizontalPodAutoscalerDownscaleForbiddenWindow = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.HPAController.HorizontalPodAutoscalerTolerance == 0 { - obj.HPAController.HorizontalPodAutoscalerTolerance = 0.1 - } - if obj.DeploymentController.DeploymentControllerSyncPeriod == zero { - obj.DeploymentController.DeploymentControllerSyncPeriod = metav1.Duration{Duration: 30 * time.Second} - } - if obj.DeprecatedController.RegisterRetryCount == 0 { - obj.DeprecatedController.RegisterRetryCount = 10 - } - if obj.NodeLifecycleController.PodEvictionTimeout == zero { - obj.NodeLifecycleController.PodEvictionTimeout = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.NodeLifecycleController.NodeMonitorGracePeriod == zero { - obj.NodeLifecycleController.NodeMonitorGracePeriod = metav1.Duration{Duration: 40 * time.Second} - } - if obj.NodeLifecycleController.NodeStartupGracePeriod == zero { - obj.NodeLifecycleController.NodeStartupGracePeriod = metav1.Duration{Duration: 60 * time.Second} - } - if obj.NodeIPAMController.NodeCIDRMaskSize == 0 { - obj.NodeIPAMController.NodeCIDRMaskSize = 24 - } - if obj.PodGCController.TerminatedPodGCThreshold == 0 { - obj.PodGCController.TerminatedPodGCThreshold = 12500 - } - if obj.GarbageCollectorController.EnableGarbageCollector == nil { - obj.GarbageCollectorController.EnableGarbageCollector = utilpointer.BoolPtr(true) - } - if obj.GarbageCollectorController.ConcurrentGCSyncs == 0 { - obj.GarbageCollectorController.ConcurrentGCSyncs = 20 - } - if obj.CSRSigningController.ClusterSigningCertFile == "" { - obj.CSRSigningController.ClusterSigningCertFile = "/etc/kubernetes/ca/ca.pem" - } - if obj.CSRSigningController.ClusterSigningKeyFile == "" { - obj.CSRSigningController.ClusterSigningKeyFile = "/etc/kubernetes/ca/ca.key" - } - if obj.CSRSigningController.ClusterSigningDuration == zero { - obj.CSRSigningController.ClusterSigningDuration = metav1.Duration{Duration: 365 * 24 * time.Hour} - } - if obj.AttachDetachController.ReconcilerSyncLoopPeriod == zero { - obj.AttachDetachController.ReconcilerSyncLoopPeriod = metav1.Duration{Duration: 60 * time.Second} - } - if obj.NodeLifecycleController.EnableTaintManager == nil { - obj.NodeLifecycleController.EnableTaintManager = utilpointer.BoolPtr(true) - } - if obj.HPAController.HorizontalPodAutoscalerUseRESTClients == nil { - obj.HPAController.HorizontalPodAutoscalerUseRESTClients = utilpointer.BoolPtr(true) - } - - // These defaults override the recommended defaults from the apimachineryconfigv1alpha1 package that are applied automatically - // These client-connection defaults are specific to the kube-controller-manager - if obj.Generic.ClientConnection.QPS == 0.0 { - obj.Generic.ClientConnection.QPS = 50.0 - } - - if obj.Generic.ClientConnection.Burst == 0 { - obj.Generic.ClientConnection.Burst = 100 - } -} - func SetDefaults_CloudControllerManagerConfiguration(obj *CloudControllerManagerConfiguration) { zero := metav1.Duration{} if obj.ServiceController.ConcurrentServiceSyncs == 0 { @@ -166,69 +47,3 @@ func SetDefaults_CloudControllerManagerConfiguration(obj *CloudControllerManager obj.Generic.ClientConnection.Burst = 30 } } - -func SetDefaults_GenericControllerManagerConfiguration(obj *GenericControllerManagerConfiguration) { - zero := metav1.Duration{} - if obj.Address == "" { - obj.Address = "0.0.0.0" - } - if obj.MinResyncPeriod == zero { - obj.MinResyncPeriod = metav1.Duration{Duration: 12 * time.Hour} - } - if obj.ControllerStartInterval == zero { - obj.ControllerStartInterval = metav1.Duration{Duration: 0 * time.Second} - } - if len(obj.Controllers) == 0 { - obj.Controllers = []string{"*"} - } - - // Use the default ClientConnectionConfiguration and LeaderElectionConfiguration options - apimachineryconfigv1alpha1.RecommendedDefaultClientConnectionConfiguration(&obj.ClientConnection) - apiserverconfigv1alpha1.RecommendedDefaultLeaderElectionConfiguration(&obj.LeaderElection) -} - -func SetDefaults_KubeCloudSharedConfiguration(obj *KubeCloudSharedConfiguration) { - zero := metav1.Duration{} - if obj.NodeMonitorPeriod == zero { - obj.NodeMonitorPeriod = metav1.Duration{Duration: 5 * time.Second} - } - if obj.ClusterName == "" { - obj.ClusterName = "kubernetes" - } - if obj.ConfigureCloudRoutes == nil { - obj.ConfigureCloudRoutes = utilpointer.BoolPtr(true) - } - if obj.RouteReconciliationPeriod == zero { - obj.RouteReconciliationPeriod = metav1.Duration{Duration: 10 * time.Second} - } -} - -func SetDefaults_PersistentVolumeRecyclerConfiguration(obj *PersistentVolumeRecyclerConfiguration) { - if obj.MaximumRetry == 0 { - obj.MaximumRetry = 3 - } - if obj.MinimumTimeoutNFS == 0 { - obj.MinimumTimeoutNFS = 300 - } - if obj.IncrementTimeoutNFS == 0 { - obj.IncrementTimeoutNFS = 30 - } - if obj.MinimumTimeoutHostPath == 0 { - obj.MinimumTimeoutHostPath = 60 - } - if obj.IncrementTimeoutHostPath == 0 { - obj.IncrementTimeoutHostPath = 30 - } -} - -func SetDefaults_VolumeConfiguration(obj *VolumeConfiguration) { - if obj.EnableHostPathProvisioning == nil { - obj.EnableHostPathProvisioning = utilpointer.BoolPtr(false) - } - if obj.EnableDynamicProvisioning == nil { - obj.EnableDynamicProvisioning = utilpointer.BoolPtr(true) - } - if obj.FlexVolumePluginDir == "" { - obj.FlexVolumePluginDir = "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/" - } -} diff --git a/pkg/apis/componentconfig/v1alpha1/types.go b/pkg/apis/componentconfig/v1alpha1/types.go index f9aa952c8fe..34ca2839153 100644 --- a/pkg/apis/componentconfig/v1alpha1/types.go +++ b/pkg/apis/componentconfig/v1alpha1/types.go @@ -22,128 +22,6 @@ import ( apiserverconfigv1alpha1 "k8s.io/apiserver/pkg/apis/config/v1alpha1" ) -type PersistentVolumeRecyclerConfiguration struct { - // maximumRetry is number of retries the PV recycler will execute on failure to recycle - // PV. - MaximumRetry int32 - // minimumTimeoutNFS is the minimum ActiveDeadlineSeconds to use for an NFS Recycler - // pod. - MinimumTimeoutNFS int32 - // podTemplateFilePathNFS is the file path to a pod definition used as a template for - // NFS persistent volume recycling - PodTemplateFilePathNFS string - // incrementTimeoutNFS is the increment of time added per Gi to ActiveDeadlineSeconds - // for an NFS scrubber pod. - IncrementTimeoutNFS int32 - // podTemplateFilePathHostPath is the file path to a pod definition used as a template for - // HostPath persistent volume recycling. This is for development and testing only and - // will not work in a multi-node cluster. - PodTemplateFilePathHostPath string - // minimumTimeoutHostPath is the minimum ActiveDeadlineSeconds to use for a HostPath - // Recycler pod. This is for development and testing only and will not work in a multi-node - // cluster. - MinimumTimeoutHostPath int32 - // incrementTimeoutHostPath is the increment of time added per Gi to ActiveDeadlineSeconds - // for a HostPath scrubber pod. This is for development and testing only and will not work - // in a multi-node cluster. - IncrementTimeoutHostPath int32 -} - -// VolumeConfiguration contains *all* enumerated flags meant to configure all volume -// plugins. From this config, the controller-manager binary will create many instances of -// volume.VolumeConfig, each containing only the configuration needed for that plugin which -// are then passed to the appropriate plugin. The ControllerManager binary is the only part -// of the code which knows what plugins are supported and which flags correspond to each plugin. -type VolumeConfiguration struct { - // enableHostPathProvisioning enables HostPath PV provisioning when running without a - // cloud provider. This allows testing and development of provisioning features. HostPath - // provisioning is not supported in any way, won't work in a multi-node cluster, and - // should not be used for anything other than testing or development. - EnableHostPathProvisioning *bool - // enableDynamicProvisioning enables the provisioning of volumes when running within an environment - // that supports dynamic provisioning. Defaults to true. - EnableDynamicProvisioning *bool - // persistentVolumeRecyclerConfiguration holds configuration for persistent volume plugins. - PersistentVolumeRecyclerConfiguration PersistentVolumeRecyclerConfiguration - // volumePluginDir is the full path of the directory in which the flex - // volume plugin should search for additional third party volume plugins - FlexVolumePluginDir string -} - -type GroupResource struct { - // group is the group portion of the GroupResource. - Group string - // resource is the resource portion of the GroupResource. - Resource string -} - -// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object - -type KubeControllerManagerConfiguration struct { - metav1.TypeMeta `json:",inline"` - - // Generic holds configuration for a generic controller-manager - Generic GenericControllerManagerConfiguration - // KubeCloudSharedConfiguration holds configuration for shared related features - // both in cloud controller manager and kube-controller manager. - KubeCloudShared KubeCloudSharedConfiguration - - // AttachDetachControllerConfiguration holds configuration for - // AttachDetachController related features. - AttachDetachController AttachDetachControllerConfiguration - // CSRSigningControllerConfiguration holds configuration for - // CSRSigningController related features. - CSRSigningController CSRSigningControllerConfiguration - // DaemonSetControllerConfiguration holds configuration for DaemonSetController - // related features. - DaemonSetController DaemonSetControllerConfiguration - // DeploymentControllerConfiguration holds configuration for - // DeploymentController related features. - DeploymentController DeploymentControllerConfiguration - // DeprecatedControllerConfiguration holds configuration for some deprecated - // features. - DeprecatedController DeprecatedControllerConfiguration - // EndpointControllerConfiguration holds configuration for EndpointController - // related features. - EndpointController EndpointControllerConfiguration - // GarbageCollectorControllerConfiguration holds configuration for - // GarbageCollectorController related features. - GarbageCollectorController GarbageCollectorControllerConfiguration - // HPAControllerConfiguration holds configuration for HPAController related features. - HPAController HPAControllerConfiguration - // JobControllerConfiguration holds configuration for JobController related features. - JobController JobControllerConfiguration - // NamespaceControllerConfiguration holds configuration for NamespaceController - // related features. - NamespaceController NamespaceControllerConfiguration - // NodeIPAMControllerConfiguration holds configuration for NodeIPAMController - // related features. - NodeIPAMController NodeIPAMControllerConfiguration - // NodeLifecycleControllerConfiguration holds configuration for - // NodeLifecycleController related features. - NodeLifecycleController NodeLifecycleControllerConfiguration - // PersistentVolumeBinderControllerConfiguration holds configuration for - // PersistentVolumeBinderController related features. - PersistentVolumeBinderController PersistentVolumeBinderControllerConfiguration - // PodGCControllerConfiguration holds configuration for PodGCController - // related features. - PodGCController PodGCControllerConfiguration - // ReplicaSetControllerConfiguration holds configuration for ReplicaSet related features. - ReplicaSetController ReplicaSetControllerConfiguration - // ReplicationControllerConfiguration holds configuration for - // ReplicationController related features. - ReplicationController ReplicationControllerConfiguration - // ResourceQuotaControllerConfiguration holds configuration for - // ResourceQuotaController related features. - ResourceQuotaController ResourceQuotaControllerConfiguration - // SAControllerConfiguration holds configuration for ServiceAccountController - // related features. - SAController SAControllerConfiguration - // ServiceControllerConfiguration holds configuration for ServiceController - // related features. - ServiceController ServiceControllerConfiguration -} - // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type CloudControllerManagerConfiguration struct { @@ -160,271 +38,3 @@ type CloudControllerManagerConfiguration struct { // NodeStatusUpdateFrequency is the frequency at which the controller updates nodes' status NodeStatusUpdateFrequency metav1.Duration } - -type GenericControllerManagerConfiguration struct { - // port is the port that the controller-manager's http service runs on. - Port int32 - // address is the IP address to serve on (set to 0.0.0.0 for all interfaces). - Address string - // minResyncPeriod is the resync period in reflectors; will be random between - // minResyncPeriod and 2*minResyncPeriod. - MinResyncPeriod metav1.Duration - // ClientConnection specifies the kubeconfig file and client connection - // settings for the proxy server to use when communicating with the apiserver. - ClientConnection apimachineryconfigv1alpha1.ClientConnectionConfiguration - // How long to wait between starting controller managers - ControllerStartInterval metav1.Duration - // leaderElection defines the configuration of leader election client. - LeaderElection apiserverconfigv1alpha1.LeaderElectionConfiguration - // Controllers is the list of controllers to enable or disable - // '*' means "all enabled by default controllers" - // 'foo' means "enable 'foo'" - // '-foo' means "disable 'foo'" - // first item for a particular name wins - Controllers []string - // DebuggingConfiguration holds configuration for Debugging related features. - Debugging apiserverconfigv1alpha1.DebuggingConfiguration -} - -type KubeCloudSharedConfiguration struct { - // CloudProviderConfiguration holds configuration for CloudProvider related features. - CloudProvider CloudProviderConfiguration - // externalCloudVolumePlugin specifies the plugin to use when cloudProvider is "external". - // It is currently used by the in repo cloud providers to handle node and volume control in the KCM. - ExternalCloudVolumePlugin string - // useServiceAccountCredentials indicates whether controllers should be run with - // individual service account credentials. - UseServiceAccountCredentials bool - // run with untagged cloud instances - AllowUntaggedCloud bool - // routeReconciliationPeriod is the period for reconciling routes created for Nodes by cloud provider.. - RouteReconciliationPeriod metav1.Duration - // nodeMonitorPeriod is the period for syncing NodeStatus in NodeController. - NodeMonitorPeriod metav1.Duration - // clusterName is the instance prefix for the cluster. - ClusterName string - // clusterCIDR is CIDR Range for Pods in cluster. - ClusterCIDR string - // AllocateNodeCIDRs enables CIDRs for Pods to be allocated and, if - // ConfigureCloudRoutes is true, to be set on the cloud provider. - AllocateNodeCIDRs bool - // CIDRAllocatorType determines what kind of pod CIDR allocator will be used. - CIDRAllocatorType string - // configureCloudRoutes enables CIDRs allocated with allocateNodeCIDRs - // to be configured on the cloud provider. - ConfigureCloudRoutes *bool - // nodeSyncPeriod is the period for syncing nodes from cloudprovider. Longer - // periods will result in fewer calls to cloud provider, but may delay addition - // of new nodes to cluster. - NodeSyncPeriod metav1.Duration -} - -type AttachDetachControllerConfiguration struct { - // Reconciler runs a periodic loop to reconcile the desired state of the with - // the actual state of the world by triggering attach detach operations. - // This flag enables or disables reconcile. Is false by default, and thus enabled. - DisableAttachDetachReconcilerSync bool - // ReconcilerSyncLoopPeriod is the amount of time the reconciler sync states loop - // wait between successive executions. Is set to 5 sec by default. - ReconcilerSyncLoopPeriod metav1.Duration -} - -type CloudProviderConfiguration struct { - // Name is the provider for cloud services. - Name string - // cloudConfigFile is the path to the cloud provider configuration file. - CloudConfigFile string -} - -type CSRSigningControllerConfiguration struct { - // clusterSigningCertFile is the filename containing a PEM-encoded - // X509 CA certificate used to issue cluster-scoped certificates - ClusterSigningCertFile string - // clusterSigningCertFile is the filename containing a PEM-encoded - // RSA or ECDSA private key used to issue cluster-scoped certificates - ClusterSigningKeyFile string - // clusterSigningDuration is the length of duration signed certificates - // will be given. - ClusterSigningDuration metav1.Duration -} - -type DaemonSetControllerConfiguration struct { - // concurrentDaemonSetSyncs is the number of daemonset objects that are - // allowed to sync concurrently. Larger number = more responsive daemonset, - // but more CPU (and network) load. - ConcurrentDaemonSetSyncs int32 -} - -type DeploymentControllerConfiguration struct { - // concurrentDeploymentSyncs is the number of deployment objects that are - // allowed to sync concurrently. Larger number = more responsive deployments, - // but more CPU (and network) load. - ConcurrentDeploymentSyncs int32 - // deploymentControllerSyncPeriod is the period for syncing the deployments. - DeploymentControllerSyncPeriod metav1.Duration -} - -type DeprecatedControllerConfiguration struct { - // DEPRECATED: deletingPodsQps is the number of nodes per second on which pods are deleted in - // case of node failure. - DeletingPodsQps float32 - // DEPRECATED: deletingPodsBurst is the number of nodes on which pods are bursty deleted in - // case of node failure. For more details look into RateLimiter. - DeletingPodsBurst int32 - // registerRetryCount is the number of retries for initial node registration. - // Retry interval equals node-sync-period. - RegisterRetryCount int32 -} - -type EndpointControllerConfiguration struct { - // concurrentEndpointSyncs is the number of endpoint syncing operations - // that will be done concurrently. Larger number = faster endpoint updating, - // but more CPU (and network) load. - ConcurrentEndpointSyncs int32 -} - -type GarbageCollectorControllerConfiguration struct { - // enables the generic garbage collector. MUST be synced with the - // corresponding flag of the kube-apiserver. WARNING: the generic garbage - // collector is an alpha feature. - EnableGarbageCollector *bool - // concurrentGCSyncs is the number of garbage collector workers that are - // allowed to sync concurrently. - ConcurrentGCSyncs int32 - // gcIgnoredResources is the list of GroupResources that garbage collection should ignore. - GCIgnoredResources []GroupResource -} - -type HPAControllerConfiguration struct { - // HorizontalPodAutoscalerSyncPeriod is the period for syncing the number of - // pods in horizontal pod autoscaler. - HorizontalPodAutoscalerSyncPeriod metav1.Duration - // HorizontalPodAutoscalerUpscaleForbiddenWindow is a period after which next upscale allowed. - HorizontalPodAutoscalerUpscaleForbiddenWindow metav1.Duration - // HorizontalPodAutoscalerDowncaleStabilizationWindow is a period for which autoscaler will look - // backwards and not scale down below any recommendation it made during that period. - HorizontalPodAutoscalerDownscaleStabilizationWindow metav1.Duration - // HorizontalPodAutoscalerDownscaleForbiddenWindow is a period after which next downscale allowed. - HorizontalPodAutoscalerDownscaleForbiddenWindow metav1.Duration - // HorizontalPodAutoscalerTolerance is the tolerance for when - // resource usage suggests upscaling/downscaling - HorizontalPodAutoscalerTolerance float64 - // HorizontalPodAutoscalerUseRESTClients causes the HPA controller to use REST clients - // through the kube-aggregator when enabled, instead of using the legacy metrics client - // through the API server proxy. - HorizontalPodAutoscalerUseRESTClients *bool - // HorizontalPodAutoscalerCPUInitializationPeriod is the period after pod start when CPU samples - // might be skipped. - HorizontalPodAutoscalerCPUInitializationPeriod metav1.Duration - // HorizontalPodAutoscalerInitialReadinessDelay is period after pod start during which readiness - // changes are treated as readiness being set for the first time. The only effect of this is that - // HPA will disregard CPU samples from unready pods that had last readiness change during that - // period. - HorizontalPodAutoscalerInitialReadinessDelay metav1.Duration -} - -type JobControllerConfiguration struct { - // concurrentJobSyncs is the number of job objects that are - // allowed to sync concurrently. Larger number = more responsive jobs, - // but more CPU (and network) load. - ConcurrentJobSyncs int32 -} - -type NamespaceControllerConfiguration struct { - // namespaceSyncPeriod is the period for syncing namespace life-cycle - // updates. - NamespaceSyncPeriod metav1.Duration - // concurrentNamespaceSyncs is the number of namespace objects that are - // allowed to sync concurrently. - ConcurrentNamespaceSyncs int32 -} - -type NodeIPAMControllerConfiguration struct { - // serviceCIDR is CIDR Range for Services in cluster. - ServiceCIDR string - // NodeCIDRMaskSize is the mask size for node cidr in cluster. - NodeCIDRMaskSize int32 -} - -type NodeLifecycleControllerConfiguration struct { - // If set to true enables NoExecute Taints and will evict all not-tolerating - // Pod running on Nodes tainted with this kind of Taints. - EnableTaintManager *bool - // nodeEvictionRate is the number of nodes per second on which pods are deleted in case of node failure when a zone is healthy - NodeEvictionRate float32 - // secondaryNodeEvictionRate is the number of nodes per second on which pods are deleted in case of node failure when a zone is unhealthy - SecondaryNodeEvictionRate float32 - // nodeStartupGracePeriod is the amount of time which we allow starting a node to - // be unresponsive before marking it unhealthy. - NodeStartupGracePeriod metav1.Duration - // nodeMontiorGracePeriod is the amount of time which we allow a running node to be - // unresponsive before marking it unhealthy. Must be N times more than kubelet's - // nodeStatusUpdateFrequency, where N means number of retries allowed for kubelet - // to post node status. - NodeMonitorGracePeriod metav1.Duration - // podEvictionTimeout is the grace period for deleting pods on failed nodes. - PodEvictionTimeout metav1.Duration - // secondaryNodeEvictionRate is implicitly overridden to 0 for clusters smaller than or equal to largeClusterSizeThreshold - LargeClusterSizeThreshold int32 - // Zone is treated as unhealthy in nodeEvictionRate and secondaryNodeEvictionRate when at least - // unhealthyZoneThreshold (no less than 3) of Nodes in the zone are NotReady - UnhealthyZoneThreshold float32 -} - -type PersistentVolumeBinderControllerConfiguration struct { - // pvClaimBinderSyncPeriod is the period for syncing persistent volumes - // and persistent volume claims. - PVClaimBinderSyncPeriod metav1.Duration - // volumeConfiguration holds configuration for volume related features. - VolumeConfiguration VolumeConfiguration -} - -type PodGCControllerConfiguration struct { - // terminatedPodGCThreshold is the number of terminated pods that can exist - // before the terminated pod garbage collector starts deleting terminated pods. - // If <= 0, the terminated pod garbage collector is disabled. - TerminatedPodGCThreshold int32 -} - -type ReplicaSetControllerConfiguration struct { - // concurrentRSSyncs is the number of replica sets that are allowed to sync - // concurrently. Larger number = more responsive replica management, but more - // CPU (and network) load. - ConcurrentRSSyncs int32 -} - -type ReplicationControllerConfiguration struct { - // concurrentRCSyncs is the number of replication controllers that are - // allowed to sync concurrently. Larger number = more responsive replica - // management, but more CPU (and network) load. - ConcurrentRCSyncs int32 -} - -type ResourceQuotaControllerConfiguration struct { - // resourceQuotaSyncPeriod is the period for syncing quota usage status - // in the system. - ResourceQuotaSyncPeriod metav1.Duration - // concurrentResourceQuotaSyncs is the number of resource quotas that are - // allowed to sync concurrently. Larger number = more responsive quota - // management, but more CPU (and network) load. - ConcurrentResourceQuotaSyncs int32 -} - -type SAControllerConfiguration struct { - // serviceAccountKeyFile is the filename containing a PEM-encoded private RSA key - // used to sign service account tokens. - ServiceAccountKeyFile string - // concurrentSATokenSyncs is the number of service account token syncing operations - // that will be done concurrently. - ConcurrentSATokenSyncs int32 - // rootCAFile is the root certificate authority will be included in service - // account's token secret. This must be a valid PEM-encoded CA bundle. - RootCAFile string -} - -type ServiceControllerConfiguration struct { - // concurrentServiceSyncs is the number of services that are - // allowed to sync concurrently. Larger number = more responsive service - // management, but more CPU (and network) load. - ConcurrentServiceSyncs int32 -} diff --git a/pkg/controller/apis/config/types.go b/pkg/controller/apis/config/types.go new file mode 100644 index 00000000000..8421a00bb40 --- /dev/null +++ b/pkg/controller/apis/config/types.go @@ -0,0 +1,409 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package config + +import ( + apimachineryconfig "k8s.io/apimachinery/pkg/apis/config" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + apiserverconfig "k8s.io/apiserver/pkg/apis/config" +) + +type GroupResource struct { + // group is the group portion of the GroupResource. + Group string + // resource is the resource portion of the GroupResource. + Resource string +} + +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +type KubeControllerManagerConfiguration struct { + metav1.TypeMeta + // Generic holds configuration for a generic controller-manager + Generic GenericControllerManagerConfiguration + // KubeCloudSharedConfiguration holds configuration for shared related features + // both in cloud controller manager and kube-controller manager. + KubeCloudShared KubeCloudSharedConfiguration + // AttachDetachControllerConfiguration holds configuration for + // AttachDetachController related features. + AttachDetachController AttachDetachControllerConfiguration + // CSRSigningControllerConfiguration holds configuration for + // CSRSigningController related features. + CSRSigningController CSRSigningControllerConfiguration + // DaemonSetControllerConfiguration holds configuration for DaemonSetController + // related features. + DaemonSetController DaemonSetControllerConfiguration + // DeploymentControllerConfiguration holds configuration for + // DeploymentController related features. + DeploymentController DeploymentControllerConfiguration + // DeprecatedControllerConfiguration holds configuration for some deprecated + // features. + DeprecatedController DeprecatedControllerConfiguration + // EndpointControllerConfiguration holds configuration for EndpointController + // related features. + EndpointController EndpointControllerConfiguration + // GarbageCollectorControllerConfiguration holds configuration for + // GarbageCollectorController related features. + GarbageCollectorController GarbageCollectorControllerConfiguration + // HPAControllerConfiguration holds configuration for HPAController related features. + HPAController HPAControllerConfiguration + // JobControllerConfiguration holds configuration for JobController related features. + JobController JobControllerConfiguration + // NamespaceControllerConfiguration holds configuration for NamespaceController + // related features. + NamespaceController NamespaceControllerConfiguration + // NodeIPAMControllerConfiguration holds configuration for NodeIPAMController + // related features. + NodeIPAMController NodeIPAMControllerConfiguration + // NodeLifecycleControllerConfiguration holds configuration for + // NodeLifecycleController related features. + NodeLifecycleController NodeLifecycleControllerConfiguration + // PersistentVolumeBinderControllerConfiguration holds configuration for + // PersistentVolumeBinderController related features. + PersistentVolumeBinderController PersistentVolumeBinderControllerConfiguration + // PodGCControllerConfiguration holds configuration for PodGCController + // related features. + PodGCController PodGCControllerConfiguration + // ReplicaSetControllerConfiguration holds configuration for ReplicaSet related features. + ReplicaSetController ReplicaSetControllerConfiguration + // ReplicationControllerConfiguration holds configuration for + // ReplicationController related features. + ReplicationController ReplicationControllerConfiguration + // ResourceQuotaControllerConfiguration holds configuration for + // ResourceQuotaController related features. + ResourceQuotaController ResourceQuotaControllerConfiguration + // SAControllerConfiguration holds configuration for ServiceAccountController + // related features. + SAController SAControllerConfiguration + // ServiceControllerConfiguration holds configuration for ServiceController + // related features. + ServiceController ServiceControllerConfiguration +} + +type GenericControllerManagerConfiguration struct { + // port is the port that the controller-manager's http service runs on. + Port int32 + // address is the IP address to serve on (set to 0.0.0.0 for all interfaces). + Address string + // minResyncPeriod is the resync period in reflectors; will be random between + // minResyncPeriod and 2*minResyncPeriod. + MinResyncPeriod metav1.Duration + // ClientConnection specifies the kubeconfig file and client connection + // settings for the proxy server to use when communicating with the apiserver. + ClientConnection apimachineryconfig.ClientConnectionConfiguration + // How long to wait between starting controller managers + ControllerStartInterval metav1.Duration + // leaderElection defines the configuration of leader election client. + LeaderElection apiserverconfig.LeaderElectionConfiguration + // Controllers is the list of controllers to enable or disable + // '*' means "all enabled by default controllers" + // 'foo' means "enable 'foo'" + // '-foo' means "disable 'foo'" + // first item for a particular name wins + Controllers []string + // DebuggingConfiguration holds configuration for Debugging related features. + Debugging apiserverconfig.DebuggingConfiguration +} + +type KubeCloudSharedConfiguration struct { + // CloudProviderConfiguration holds configuration for CloudProvider related features. + CloudProvider CloudProviderConfiguration + // externalCloudVolumePlugin specifies the plugin to use when cloudProvider is "external". + // It is currently used by the in repo cloud providers to handle node and volume control in the KCM. + ExternalCloudVolumePlugin string + // useServiceAccountCredentials indicates whether controllers should be run with + // individual service account credentials. + UseServiceAccountCredentials bool + // run with untagged cloud instances + AllowUntaggedCloud bool + // routeReconciliationPeriod is the period for reconciling routes created for Nodes by cloud provider.. + RouteReconciliationPeriod metav1.Duration + // nodeMonitorPeriod is the period for syncing NodeStatus in NodeController. + NodeMonitorPeriod metav1.Duration + // clusterName is the instance prefix for the cluster. + ClusterName string + // clusterCIDR is CIDR Range for Pods in cluster. + ClusterCIDR string + // AllocateNodeCIDRs enables CIDRs for Pods to be allocated and, if + // ConfigureCloudRoutes is true, to be set on the cloud provider. + AllocateNodeCIDRs bool + // CIDRAllocatorType determines what kind of pod CIDR allocator will be used. + CIDRAllocatorType string + // configureCloudRoutes enables CIDRs allocated with allocateNodeCIDRs + // to be configured on the cloud provider. + ConfigureCloudRoutes bool + // nodeSyncPeriod is the period for syncing nodes from cloudprovider. Longer + // periods will result in fewer calls to cloud provider, but may delay addition + // of new nodes to cluster. + NodeSyncPeriod metav1.Duration +} +type AttachDetachControllerConfiguration struct { + // Reconciler runs a periodic loop to reconcile the desired state of the with + // the actual state of the world by triggering attach detach operations. + // This flag enables or disables reconcile. Is false by default, and thus enabled. + DisableAttachDetachReconcilerSync bool + // ReconcilerSyncLoopPeriod is the amount of time the reconciler sync states loop + // wait between successive executions. Is set to 5 sec by default. + ReconcilerSyncLoopPeriod metav1.Duration +} + +type CloudProviderConfiguration struct { + // Name is the provider for cloud services. + Name string + // cloudConfigFile is the path to the cloud provider configuration file. + CloudConfigFile string +} + +type CSRSigningControllerConfiguration struct { + // clusterSigningCertFile is the filename containing a PEM-encoded + // X509 CA certificate used to issue cluster-scoped certificates + ClusterSigningCertFile string + // clusterSigningCertFile is the filename containing a PEM-encoded + // RSA or ECDSA private key used to issue cluster-scoped certificates + ClusterSigningKeyFile string + // clusterSigningDuration is the length of duration signed certificates + // will be given. + ClusterSigningDuration metav1.Duration +} + +type DaemonSetControllerConfiguration struct { + // concurrentDaemonSetSyncs is the number of daemonset objects that are + // allowed to sync concurrently. Larger number = more responsive daemonset, + // but more CPU (and network) load. + ConcurrentDaemonSetSyncs int32 +} + +type DeploymentControllerConfiguration struct { + // concurrentDeploymentSyncs is the number of deployment objects that are + // allowed to sync concurrently. Larger number = more responsive deployments, + // but more CPU (and network) load. + ConcurrentDeploymentSyncs int32 + // deploymentControllerSyncPeriod is the period for syncing the deployments. + DeploymentControllerSyncPeriod metav1.Duration +} + +type DeprecatedControllerConfiguration struct { + // DEPRECATED: deletingPodsQps is the number of nodes per second on which pods are deleted in + // case of node failure. + DeletingPodsQps float32 + // DEPRECATED: deletingPodsBurst is the number of nodes on which pods are bursty deleted in + // case of node failure. For more details look into RateLimiter. + DeletingPodsBurst int32 + // registerRetryCount is the number of retries for initial node registration. + // Retry interval equals node-sync-period. + RegisterRetryCount int32 +} + +type EndpointControllerConfiguration struct { + // concurrentEndpointSyncs is the number of endpoint syncing operations + // that will be done concurrently. Larger number = faster endpoint updating, + // but more CPU (and network) load. + ConcurrentEndpointSyncs int32 +} + +type GarbageCollectorControllerConfiguration struct { + // enables the generic garbage collector. MUST be synced with the + // corresponding flag of the kube-apiserver. WARNING: the generic garbage + // collector is an alpha feature. + EnableGarbageCollector bool + // concurrentGCSyncs is the number of garbage collector workers that are + // allowed to sync concurrently. + ConcurrentGCSyncs int32 + // gcIgnoredResources is the list of GroupResources that garbage collection should ignore. + GCIgnoredResources []GroupResource +} + +type HPAControllerConfiguration struct { + // horizontalPodAutoscalerSyncPeriod is the period for syncing the number of + // pods in horizontal pod autoscaler. + HorizontalPodAutoscalerSyncPeriod metav1.Duration + // horizontalPodAutoscalerUpscaleForbiddenWindow is a period after which next upscale allowed. + HorizontalPodAutoscalerUpscaleForbiddenWindow metav1.Duration + // horizontalPodAutoscalerDownscaleForbiddenWindow is a period after which next downscale allowed. + HorizontalPodAutoscalerDownscaleForbiddenWindow metav1.Duration + // HorizontalPodAutoscalerDowncaleStabilizationWindow is a period for which autoscaler will look + // backwards and not scale down below any recommendation it made during that period. + HorizontalPodAutoscalerDownscaleStabilizationWindow metav1.Duration + // horizontalPodAutoscalerTolerance is the tolerance for when + // resource usage suggests upscaling/downscaling + HorizontalPodAutoscalerTolerance float64 + // HorizontalPodAutoscalerUseRESTClients causes the HPA controller to use REST clients + // through the kube-aggregator when enabled, instead of using the legacy metrics client + // through the API server proxy. + HorizontalPodAutoscalerUseRESTClients bool + // HorizontalPodAutoscalerCPUInitializationPeriod is the period after pod start when CPU samples + // might be skipped. + HorizontalPodAutoscalerCPUInitializationPeriod metav1.Duration + // HorizontalPodAutoscalerInitialReadinessDelay is period after pod start during which readiness + // changes are treated as readiness being set for the first time. The only effect of this is that + // HPA will disregard CPU samples from unready pods that had last readiness change during that + // period. + HorizontalPodAutoscalerInitialReadinessDelay metav1.Duration +} + +type JobControllerConfiguration struct { + // concurrentJobSyncs is the number of job objects that are + // allowed to sync concurrently. Larger number = more responsive jobs, + // but more CPU (and network) load. + ConcurrentJobSyncs int32 +} + +type NamespaceControllerConfiguration struct { + // namespaceSyncPeriod is the period for syncing namespace life-cycle + // updates. + NamespaceSyncPeriod metav1.Duration + // concurrentNamespaceSyncs is the number of namespace objects that are + // allowed to sync concurrently. + ConcurrentNamespaceSyncs int32 +} + +type NodeIPAMControllerConfiguration struct { + // serviceCIDR is CIDR Range for Services in cluster. + ServiceCIDR string + // NodeCIDRMaskSize is the mask size for node cidr in cluster. + NodeCIDRMaskSize int32 +} + +type NodeLifecycleControllerConfiguration struct { + // If set to true enables NoExecute Taints and will evict all not-tolerating + // Pod running on Nodes tainted with this kind of Taints. + EnableTaintManager bool + // nodeEvictionRate is the number of nodes per second on which pods are deleted in case of node failure when a zone is healthy + NodeEvictionRate float32 + // secondaryNodeEvictionRate is the number of nodes per second on which pods are deleted in case of node failure when a zone is unhealthy + SecondaryNodeEvictionRate float32 + // nodeStartupGracePeriod is the amount of time which we allow starting a node to + // be unresponsive before marking it unhealthy. + NodeStartupGracePeriod metav1.Duration + // nodeMontiorGracePeriod is the amount of time which we allow a running node to be + // unresponsive before marking it unhealthy. Must be N times more than kubelet's + // nodeStatusUpdateFrequency, where N means number of retries allowed for kubelet + // to post node status. + NodeMonitorGracePeriod metav1.Duration + // podEvictionTimeout is the grace period for deleting pods on failed nodes. + PodEvictionTimeout metav1.Duration + // secondaryNodeEvictionRate is implicitly overridden to 0 for clusters smaller than or equal to largeClusterSizeThreshold + LargeClusterSizeThreshold int32 + // Zone is treated as unhealthy in nodeEvictionRate and secondaryNodeEvictionRate when at least + // unhealthyZoneThreshold (no less than 3) of Nodes in the zone are NotReady + UnhealthyZoneThreshold float32 +} + +type PersistentVolumeBinderControllerConfiguration struct { + // pvClaimBinderSyncPeriod is the period for syncing persistent volumes + // and persistent volume claims. + PVClaimBinderSyncPeriod metav1.Duration + // volumeConfiguration holds configuration for volume related features. + VolumeConfiguration VolumeConfiguration +} + +type PodGCControllerConfiguration struct { + // terminatedPodGCThreshold is the number of terminated pods that can exist + // before the terminated pod garbage collector starts deleting terminated pods. + // If <= 0, the terminated pod garbage collector is disabled. + TerminatedPodGCThreshold int32 +} + +type ReplicaSetControllerConfiguration struct { + // concurrentRSSyncs is the number of replica sets that are allowed to sync + // concurrently. Larger number = more responsive replica management, but more + // CPU (and network) load. + ConcurrentRSSyncs int32 +} + +type ReplicationControllerConfiguration struct { + // concurrentRCSyncs is the number of replication controllers that are + // allowed to sync concurrently. Larger number = more responsive replica + // management, but more CPU (and network) load. + ConcurrentRCSyncs int32 +} + +type ResourceQuotaControllerConfiguration struct { + // resourceQuotaSyncPeriod is the period for syncing quota usage status + // in the system. + ResourceQuotaSyncPeriod metav1.Duration + // concurrentResourceQuotaSyncs is the number of resource quotas that are + // allowed to sync concurrently. Larger number = more responsive quota + // management, but more CPU (and network) load. + ConcurrentResourceQuotaSyncs int32 +} + +type SAControllerConfiguration struct { + // serviceAccountKeyFile is the filename containing a PEM-encoded private RSA key + // used to sign service account tokens. + ServiceAccountKeyFile string + // concurrentSATokenSyncs is the number of service account token syncing operations + // that will be done concurrently. + ConcurrentSATokenSyncs int32 + // rootCAFile is the root certificate authority will be included in service + // account's token secret. This must be a valid PEM-encoded CA bundle. + RootCAFile string +} + +type ServiceControllerConfiguration struct { + // concurrentServiceSyncs is the number of services that are + // allowed to sync concurrently. Larger number = more responsive service + // management, but more CPU (and network) load. + ConcurrentServiceSyncs int32 +} + +// VolumeConfiguration contains *all* enumerated flags meant to configure all volume +// plugins. From this config, the controller-manager binary will create many instances of +// volume.VolumeConfig, each containing only the configuration needed for that plugin which +// are then passed to the appropriate plugin. The ControllerManager binary is the only part +// of the code which knows what plugins are supported and which flags correspond to each plugin. +type VolumeConfiguration struct { + // enableHostPathProvisioning enables HostPath PV provisioning when running without a + // cloud provider. This allows testing and development of provisioning features. HostPath + // provisioning is not supported in any way, won't work in a multi-node cluster, and + // should not be used for anything other than testing or development. + EnableHostPathProvisioning bool + // enableDynamicProvisioning enables the provisioning of volumes when running within an environment + // that supports dynamic provisioning. Defaults to true. + EnableDynamicProvisioning bool + // persistentVolumeRecyclerConfiguration holds configuration for persistent volume plugins. + PersistentVolumeRecyclerConfiguration PersistentVolumeRecyclerConfiguration + // volumePluginDir is the full path of the directory in which the flex + // volume plugin should search for additional third party volume plugins + FlexVolumePluginDir string +} + +type PersistentVolumeRecyclerConfiguration struct { + // maximumRetry is number of retries the PV recycler will execute on failure to recycle + // PV. + MaximumRetry int32 + // minimumTimeoutNFS is the minimum ActiveDeadlineSeconds to use for an NFS Recycler + // pod. + MinimumTimeoutNFS int32 + // podTemplateFilePathNFS is the file path to a pod definition used as a template for + // NFS persistent volume recycling + PodTemplateFilePathNFS string + // incrementTimeoutNFS is the increment of time added per Gi to ActiveDeadlineSeconds + // for an NFS scrubber pod. + IncrementTimeoutNFS int32 + // podTemplateFilePathHostPath is the file path to a pod definition used as a template for + // HostPath persistent volume recycling. This is for development and testing only and + // will not work in a multi-node cluster. + PodTemplateFilePathHostPath string + // minimumTimeoutHostPath is the minimum ActiveDeadlineSeconds to use for a HostPath + // Recycler pod. This is for development and testing only and will not work in a multi-node + // cluster. + MinimumTimeoutHostPath int32 + // incrementTimeoutHostPath is the increment of time added per Gi to ActiveDeadlineSeconds + // for a HostPath scrubber pod. This is for development and testing only and will not work + // in a multi-node cluster. + IncrementTimeoutHostPath int32 +} diff --git a/pkg/controller/apis/config/v1alpha1/defaults.go b/pkg/controller/apis/config/v1alpha1/defaults.go new file mode 100644 index 00000000000..5537b5a3ece --- /dev/null +++ b/pkg/controller/apis/config/v1alpha1/defaults.go @@ -0,0 +1,214 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + "time" + + apimachineryconfigv1alpha1 "k8s.io/apimachinery/pkg/apis/config/v1alpha1" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + kruntime "k8s.io/apimachinery/pkg/runtime" + apiserverconfigv1alpha1 "k8s.io/apiserver/pkg/apis/config/v1alpha1" + kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1" + utilpointer "k8s.io/utils/pointer" +) + +func addDefaultingFuncs(scheme *kruntime.Scheme) error { + return RegisterDefaults(scheme) +} + +func SetDefaults_KubeControllerManagerConfiguration(obj *KubeControllerManagerConfiguration) { + zero := metav1.Duration{} + if obj.EndpointController.ConcurrentEndpointSyncs == 0 { + obj.EndpointController.ConcurrentEndpointSyncs = 5 + } + if obj.ServiceController.ConcurrentServiceSyncs == 0 { + obj.ServiceController.ConcurrentServiceSyncs = 1 + } + if obj.ReplicationController.ConcurrentRCSyncs == 0 { + obj.ReplicationController.ConcurrentRCSyncs = 5 + } + if obj.ReplicaSetController.ConcurrentRSSyncs == 0 { + obj.ReplicaSetController.ConcurrentRSSyncs = 5 + } + if obj.DaemonSetController.ConcurrentDaemonSetSyncs == 0 { + obj.DaemonSetController.ConcurrentDaemonSetSyncs = 2 + } + if obj.JobController.ConcurrentJobSyncs == 0 { + obj.JobController.ConcurrentJobSyncs = 5 + } + if obj.ResourceQuotaController.ConcurrentResourceQuotaSyncs == 0 { + obj.ResourceQuotaController.ConcurrentResourceQuotaSyncs = 5 + } + if obj.DeploymentController.ConcurrentDeploymentSyncs == 0 { + obj.DeploymentController.ConcurrentDeploymentSyncs = 5 + } + if obj.NamespaceController.ConcurrentNamespaceSyncs == 0 { + obj.NamespaceController.ConcurrentNamespaceSyncs = 10 + } + if obj.SAController.ConcurrentSATokenSyncs == 0 { + obj.SAController.ConcurrentSATokenSyncs = 5 + } + if obj.ResourceQuotaController.ResourceQuotaSyncPeriod == zero { + obj.ResourceQuotaController.ResourceQuotaSyncPeriod = metav1.Duration{Duration: 5 * time.Minute} + } + if obj.NamespaceController.NamespaceSyncPeriod == zero { + obj.NamespaceController.NamespaceSyncPeriod = metav1.Duration{Duration: 5 * time.Minute} + } + if obj.PersistentVolumeBinderController.PVClaimBinderSyncPeriod == zero { + obj.PersistentVolumeBinderController.PVClaimBinderSyncPeriod = metav1.Duration{Duration: 15 * time.Second} + } + if obj.HPAController.HorizontalPodAutoscalerSyncPeriod == zero { + obj.HPAController.HorizontalPodAutoscalerSyncPeriod = metav1.Duration{Duration: 15 * time.Second} + } + if obj.HPAController.HorizontalPodAutoscalerUpscaleForbiddenWindow == zero { + obj.HPAController.HorizontalPodAutoscalerUpscaleForbiddenWindow = metav1.Duration{Duration: 3 * time.Minute} + } + if obj.HPAController.HorizontalPodAutoscalerDownscaleStabilizationWindow == zero { + obj.HPAController.HorizontalPodAutoscalerDownscaleStabilizationWindow = metav1.Duration{Duration: 5 * time.Minute} + } + if obj.HPAController.HorizontalPodAutoscalerCPUInitializationPeriod == zero { + obj.HPAController.HorizontalPodAutoscalerCPUInitializationPeriod = metav1.Duration{Duration: 5 * time.Minute} + } + if obj.HPAController.HorizontalPodAutoscalerInitialReadinessDelay == zero { + obj.HPAController.HorizontalPodAutoscalerInitialReadinessDelay = metav1.Duration{Duration: 30 * time.Second} + } + if obj.HPAController.HorizontalPodAutoscalerDownscaleForbiddenWindow == zero { + obj.HPAController.HorizontalPodAutoscalerDownscaleForbiddenWindow = metav1.Duration{Duration: 5 * time.Minute} + } + if obj.HPAController.HorizontalPodAutoscalerTolerance == 0 { + obj.HPAController.HorizontalPodAutoscalerTolerance = 0.1 + } + if obj.DeploymentController.DeploymentControllerSyncPeriod == zero { + obj.DeploymentController.DeploymentControllerSyncPeriod = metav1.Duration{Duration: 30 * time.Second} + } + if obj.DeprecatedController.RegisterRetryCount == 0 { + obj.DeprecatedController.RegisterRetryCount = 10 + } + if obj.NodeLifecycleController.PodEvictionTimeout == zero { + obj.NodeLifecycleController.PodEvictionTimeout = metav1.Duration{Duration: 5 * time.Minute} + } + if obj.NodeLifecycleController.NodeMonitorGracePeriod == zero { + obj.NodeLifecycleController.NodeMonitorGracePeriod = metav1.Duration{Duration: 40 * time.Second} + } + if obj.NodeLifecycleController.NodeStartupGracePeriod == zero { + obj.NodeLifecycleController.NodeStartupGracePeriod = metav1.Duration{Duration: 60 * time.Second} + } + if obj.NodeIPAMController.NodeCIDRMaskSize == 0 { + obj.NodeIPAMController.NodeCIDRMaskSize = 24 + } + if obj.PodGCController.TerminatedPodGCThreshold == 0 { + obj.PodGCController.TerminatedPodGCThreshold = 12500 + } + if obj.GarbageCollectorController.EnableGarbageCollector == nil { + obj.GarbageCollectorController.EnableGarbageCollector = utilpointer.BoolPtr(true) + } + if obj.GarbageCollectorController.ConcurrentGCSyncs == 0 { + obj.GarbageCollectorController.ConcurrentGCSyncs = 20 + } + if obj.CSRSigningController.ClusterSigningCertFile == "" { + obj.CSRSigningController.ClusterSigningCertFile = "/etc/kubernetes/ca/ca.pem" + } + if obj.CSRSigningController.ClusterSigningKeyFile == "" { + obj.CSRSigningController.ClusterSigningKeyFile = "/etc/kubernetes/ca/ca.key" + } + if obj.CSRSigningController.ClusterSigningDuration == zero { + obj.CSRSigningController.ClusterSigningDuration = metav1.Duration{Duration: 365 * 24 * time.Hour} + } + if obj.AttachDetachController.ReconcilerSyncLoopPeriod == zero { + obj.AttachDetachController.ReconcilerSyncLoopPeriod = metav1.Duration{Duration: 60 * time.Second} + } + if obj.NodeLifecycleController.EnableTaintManager == nil { + obj.NodeLifecycleController.EnableTaintManager = utilpointer.BoolPtr(true) + } + if obj.HPAController.HorizontalPodAutoscalerUseRESTClients == nil { + obj.HPAController.HorizontalPodAutoscalerUseRESTClients = utilpointer.BoolPtr(true) + } + // These defaults override the recommended defaults from the apimachineryconfigv1alpha1 package that are applied automatically + // These client-connection defaults are specific to the kube-controller-manager + if obj.Generic.ClientConnection.QPS == 0.0 { + obj.Generic.ClientConnection.QPS = 50.0 + } + if obj.Generic.ClientConnection.Burst == 0 { + obj.Generic.ClientConnection.Burst = 100 + } +} + +func SetDefaults_GenericControllerManagerConfiguration(obj *GenericControllerManagerConfiguration) { + zero := metav1.Duration{} + if obj.Address == "" { + obj.Address = "0.0.0.0" + } + if obj.MinResyncPeriod == zero { + obj.MinResyncPeriod = metav1.Duration{Duration: 12 * time.Hour} + } + if obj.ControllerStartInterval == zero { + obj.ControllerStartInterval = metav1.Duration{Duration: 0 * time.Second} + } + if len(obj.Controllers) == 0 { + obj.Controllers = []string{"*"} + } + // Use the default ClientConnectionConfiguration and LeaderElectionConfiguration options + apimachineryconfigv1alpha1.RecommendedDefaultClientConnectionConfiguration(&obj.ClientConnection) + apiserverconfigv1alpha1.RecommendedDefaultLeaderElectionConfiguration(&obj.LeaderElection) +} + +func SetDefaults_KubeCloudSharedConfiguration(obj *KubeCloudSharedConfiguration) { + zero := metav1.Duration{} + if obj.NodeMonitorPeriod == zero { + obj.NodeMonitorPeriod = metav1.Duration{Duration: 5 * time.Second} + } + if obj.ClusterName == "" { + obj.ClusterName = "kubernetes" + } + if obj.ConfigureCloudRoutes == nil { + obj.ConfigureCloudRoutes = utilpointer.BoolPtr(true) + } + if obj.RouteReconciliationPeriod == zero { + obj.RouteReconciliationPeriod = metav1.Duration{Duration: 10 * time.Second} + } +} + +func SetDefaults_PersistentVolumeRecyclerConfiguration(obj *PersistentVolumeRecyclerConfiguration) { + if obj.MaximumRetry == 0 { + obj.MaximumRetry = 3 + } + if obj.MinimumTimeoutNFS == 0 { + obj.MinimumTimeoutNFS = 300 + } + if obj.IncrementTimeoutNFS == 0 { + obj.IncrementTimeoutNFS = 30 + } + if obj.MinimumTimeoutHostPath == 0 { + obj.MinimumTimeoutHostPath = 60 + } + if obj.IncrementTimeoutHostPath == 0 { + obj.IncrementTimeoutHostPath = 30 + } +} + +func SetDefaults_VolumeConfiguration(obj *VolumeConfiguration) { + if obj.EnableHostPathProvisioning == nil { + obj.EnableHostPathProvisioning = utilpointer.BoolPtr(false) + } + if obj.EnableDynamicProvisioning == nil { + obj.EnableDynamicProvisioning = utilpointer.BoolPtr(true) + } + if obj.FlexVolumePluginDir == "" { + obj.FlexVolumePluginDir = "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/" + } +} diff --git a/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/types.go b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/types.go new file mode 100644 index 00000000000..d831a88c852 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/types.go @@ -0,0 +1,410 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + apimachineryconfigv1alpha1 "k8s.io/apimachinery/pkg/apis/config/v1alpha1" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + apiserverconfigv1alpha1 "k8s.io/apiserver/pkg/apis/config/v1alpha1" +) + +type PersistentVolumeRecyclerConfiguration struct { + // maximumRetry is number of retries the PV recycler will execute on failure to recycle + // PV. + MaximumRetry int32 + // minimumTimeoutNFS is the minimum ActiveDeadlineSeconds to use for an NFS Recycler + // pod. + MinimumTimeoutNFS int32 + // podTemplateFilePathNFS is the file path to a pod definition used as a template for + // NFS persistent volume recycling + PodTemplateFilePathNFS string + // incrementTimeoutNFS is the increment of time added per Gi to ActiveDeadlineSeconds + // for an NFS scrubber pod. + IncrementTimeoutNFS int32 + // podTemplateFilePathHostPath is the file path to a pod definition used as a template for + // HostPath persistent volume recycling. This is for development and testing only and + // will not work in a multi-node cluster. + PodTemplateFilePathHostPath string + // minimumTimeoutHostPath is the minimum ActiveDeadlineSeconds to use for a HostPath + // Recycler pod. This is for development and testing only and will not work in a multi-node + // cluster. + MinimumTimeoutHostPath int32 + // incrementTimeoutHostPath is the increment of time added per Gi to ActiveDeadlineSeconds + // for a HostPath scrubber pod. This is for development and testing only and will not work + // in a multi-node cluster. + IncrementTimeoutHostPath int32 +} + +// VolumeConfiguration contains *all* enumerated flags meant to configure all volume +// plugins. From this config, the controller-manager binary will create many instances of +// volume.VolumeConfig, each containing only the configuration needed for that plugin which +// are then passed to the appropriate plugin. The ControllerManager binary is the only part +// of the code which knows what plugins are supported and which flags correspond to each plugin. +type VolumeConfiguration struct { + // enableHostPathProvisioning enables HostPath PV provisioning when running without a + // cloud provider. This allows testing and development of provisioning features. HostPath + // provisioning is not supported in any way, won't work in a multi-node cluster, and + // should not be used for anything other than testing or development. + EnableHostPathProvisioning *bool + // enableDynamicProvisioning enables the provisioning of volumes when running within an environment + // that supports dynamic provisioning. Defaults to true. + EnableDynamicProvisioning *bool + // persistentVolumeRecyclerConfiguration holds configuration for persistent volume plugins. + PersistentVolumeRecyclerConfiguration PersistentVolumeRecyclerConfiguration + // volumePluginDir is the full path of the directory in which the flex + // volume plugin should search for additional third party volume plugins + FlexVolumePluginDir string +} + +type GroupResource struct { + // group is the group portion of the GroupResource. + Group string + // resource is the resource portion of the GroupResource. + Resource string +} + +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +type KubeControllerManagerConfiguration struct { + metav1.TypeMeta `json:",inline"` + // Generic holds configuration for a generic controller-manager + Generic GenericControllerManagerConfiguration + // KubeCloudSharedConfiguration holds configuration for shared related features + // both in cloud controller manager and kube-controller manager. + KubeCloudShared KubeCloudSharedConfiguration + // AttachDetachControllerConfiguration holds configuration for + // AttachDetachController related features. + AttachDetachController AttachDetachControllerConfiguration + // CSRSigningControllerConfiguration holds configuration for + // CSRSigningController related features. + CSRSigningController CSRSigningControllerConfiguration + // DaemonSetControllerConfiguration holds configuration for DaemonSetController + // related features. + DaemonSetController DaemonSetControllerConfiguration + // DeploymentControllerConfiguration holds configuration for + // DeploymentController related features. + DeploymentController DeploymentControllerConfiguration + // DeprecatedControllerConfiguration holds configuration for some deprecated + // features. + DeprecatedController DeprecatedControllerConfiguration + // EndpointControllerConfiguration holds configuration for EndpointController + // related features. + EndpointController EndpointControllerConfiguration + // GarbageCollectorControllerConfiguration holds configuration for + // GarbageCollectorController related features. + GarbageCollectorController GarbageCollectorControllerConfiguration + // HPAControllerConfiguration holds configuration for HPAController related features. + HPAController HPAControllerConfiguration + // JobControllerConfiguration holds configuration for JobController related features. + JobController JobControllerConfiguration + // NamespaceControllerConfiguration holds configuration for NamespaceController + // related features. + NamespaceController NamespaceControllerConfiguration + // NodeIPAMControllerConfiguration holds configuration for NodeIPAMController + // related features. + NodeIPAMController NodeIPAMControllerConfiguration + // NodeLifecycleControllerConfiguration holds configuration for + // NodeLifecycleController related features. + NodeLifecycleController NodeLifecycleControllerConfiguration + // PersistentVolumeBinderControllerConfiguration holds configuration for + // PersistentVolumeBinderController related features. + PersistentVolumeBinderController PersistentVolumeBinderControllerConfiguration + // PodGCControllerConfiguration holds configuration for PodGCController + // related features. + PodGCController PodGCControllerConfiguration + // ReplicaSetControllerConfiguration holds configuration for ReplicaSet related features. + ReplicaSetController ReplicaSetControllerConfiguration + // ReplicationControllerConfiguration holds configuration for + // ReplicationController related features. + ReplicationController ReplicationControllerConfiguration + // ResourceQuotaControllerConfiguration holds configuration for + // ResourceQuotaController related features. + ResourceQuotaController ResourceQuotaControllerConfiguration + // SAControllerConfiguration holds configuration for ServiceAccountController + // related features. + SAController SAControllerConfiguration + // ServiceControllerConfiguration holds configuration for ServiceController + // related features. + ServiceController ServiceControllerConfiguration +} + +type GenericControllerManagerConfiguration struct { + // port is the port that the controller-manager's http service runs on. + Port int32 + // address is the IP address to serve on (set to 0.0.0.0 for all interfaces). + Address string + // minResyncPeriod is the resync period in reflectors; will be random between + // minResyncPeriod and 2*minResyncPeriod. + MinResyncPeriod metav1.Duration + // ClientConnection specifies the kubeconfig file and client connection + // settings for the proxy server to use when communicating with the apiserver. + ClientConnection apimachineryconfigv1alpha1.ClientConnectionConfiguration + // How long to wait between starting controller managers + ControllerStartInterval metav1.Duration + // leaderElection defines the configuration of leader election client. + LeaderElection apiserverconfigv1alpha1.LeaderElectionConfiguration + // Controllers is the list of controllers to enable or disable + // '*' means "all enabled by default controllers" + // 'foo' means "enable 'foo'" + // '-foo' means "disable 'foo'" + // first item for a particular name wins + Controllers []string + // DebuggingConfiguration holds configuration for Debugging related features. + Debugging apiserverconfigv1alpha1.DebuggingConfiguration +} + +type KubeCloudSharedConfiguration struct { + // CloudProviderConfiguration holds configuration for CloudProvider related features. + CloudProvider CloudProviderConfiguration + // externalCloudVolumePlugin specifies the plugin to use when cloudProvider is "external". + // It is currently used by the in repo cloud providers to handle node and volume control in the KCM. + ExternalCloudVolumePlugin string + // useServiceAccountCredentials indicates whether controllers should be run with + // individual service account credentials. + UseServiceAccountCredentials bool + // run with untagged cloud instances + AllowUntaggedCloud bool + // routeReconciliationPeriod is the period for reconciling routes created for Nodes by cloud provider.. + RouteReconciliationPeriod metav1.Duration + // nodeMonitorPeriod is the period for syncing NodeStatus in NodeController. + NodeMonitorPeriod metav1.Duration + // clusterName is the instance prefix for the cluster. + ClusterName string + // clusterCIDR is CIDR Range for Pods in cluster. + ClusterCIDR string + // AllocateNodeCIDRs enables CIDRs for Pods to be allocated and, if + // ConfigureCloudRoutes is true, to be set on the cloud provider. + AllocateNodeCIDRs bool + // CIDRAllocatorType determines what kind of pod CIDR allocator will be used. + CIDRAllocatorType string + // configureCloudRoutes enables CIDRs allocated with allocateNodeCIDRs + // to be configured on the cloud provider. + ConfigureCloudRoutes *bool + // nodeSyncPeriod is the period for syncing nodes from cloudprovider. Longer + // periods will result in fewer calls to cloud provider, but may delay addition + // of new nodes to cluster. + NodeSyncPeriod metav1.Duration +} + +type AttachDetachControllerConfiguration struct { + // Reconciler runs a periodic loop to reconcile the desired state of the with + // the actual state of the world by triggering attach detach operations. + // This flag enables or disables reconcile. Is false by default, and thus enabled. + DisableAttachDetachReconcilerSync bool + // ReconcilerSyncLoopPeriod is the amount of time the reconciler sync states loop + // wait between successive executions. Is set to 5 sec by default. + ReconcilerSyncLoopPeriod metav1.Duration +} + +type CloudProviderConfiguration struct { + // Name is the provider for cloud services. + Name string + // cloudConfigFile is the path to the cloud provider configuration file. + CloudConfigFile string +} + +type CSRSigningControllerConfiguration struct { + // clusterSigningCertFile is the filename containing a PEM-encoded + // X509 CA certificate used to issue cluster-scoped certificates + ClusterSigningCertFile string + // clusterSigningCertFile is the filename containing a PEM-encoded + // RSA or ECDSA private key used to issue cluster-scoped certificates + ClusterSigningKeyFile string + // clusterSigningDuration is the length of duration signed certificates + // will be given. + ClusterSigningDuration metav1.Duration +} + +type DaemonSetControllerConfiguration struct { + // concurrentDaemonSetSyncs is the number of daemonset objects that are + // allowed to sync concurrently. Larger number = more responsive daemonset, + // but more CPU (and network) load. + ConcurrentDaemonSetSyncs int32 +} + +type DeploymentControllerConfiguration struct { + // concurrentDeploymentSyncs is the number of deployment objects that are + // allowed to sync concurrently. Larger number = more responsive deployments, + // but more CPU (and network) load. + ConcurrentDeploymentSyncs int32 + // deploymentControllerSyncPeriod is the period for syncing the deployments. + DeploymentControllerSyncPeriod metav1.Duration +} + +type DeprecatedControllerConfiguration struct { + // DEPRECATED: deletingPodsQps is the number of nodes per second on which pods are deleted in + // case of node failure. + DeletingPodsQps float32 + // DEPRECATED: deletingPodsBurst is the number of nodes on which pods are bursty deleted in + // case of node failure. For more details look into RateLimiter. + DeletingPodsBurst int32 + // registerRetryCount is the number of retries for initial node registration. + // Retry interval equals node-sync-period. + RegisterRetryCount int32 +} + +type EndpointControllerConfiguration struct { + // concurrentEndpointSyncs is the number of endpoint syncing operations + // that will be done concurrently. Larger number = faster endpoint updating, + // but more CPU (and network) load. + ConcurrentEndpointSyncs int32 +} + +type GarbageCollectorControllerConfiguration struct { + // enables the generic garbage collector. MUST be synced with the + // corresponding flag of the kube-apiserver. WARNING: the generic garbage + // collector is an alpha feature. + EnableGarbageCollector *bool + // concurrentGCSyncs is the number of garbage collector workers that are + // allowed to sync concurrently. + ConcurrentGCSyncs int32 + // gcIgnoredResources is the list of GroupResources that garbage collection should ignore. + GCIgnoredResources []GroupResource +} + +type HPAControllerConfiguration struct { + // HorizontalPodAutoscalerSyncPeriod is the period for syncing the number of + // pods in horizontal pod autoscaler. + HorizontalPodAutoscalerSyncPeriod metav1.Duration + // HorizontalPodAutoscalerUpscaleForbiddenWindow is a period after which next upscale allowed. + HorizontalPodAutoscalerUpscaleForbiddenWindow metav1.Duration + // HorizontalPodAutoscalerDowncaleStabilizationWindow is a period for which autoscaler will look + // backwards and not scale down below any recommendation it made during that period. + HorizontalPodAutoscalerDownscaleStabilizationWindow metav1.Duration + // HorizontalPodAutoscalerDownscaleForbiddenWindow is a period after which next downscale allowed. + HorizontalPodAutoscalerDownscaleForbiddenWindow metav1.Duration + // HorizontalPodAutoscalerTolerance is the tolerance for when + // resource usage suggests upscaling/downscaling + HorizontalPodAutoscalerTolerance float64 + // HorizontalPodAutoscalerUseRESTClients causes the HPA controller to use REST clients + // through the kube-aggregator when enabled, instead of using the legacy metrics client + // through the API server proxy. + HorizontalPodAutoscalerUseRESTClients *bool + // HorizontalPodAutoscalerCPUInitializationPeriod is the period after pod start when CPU samples + // might be skipped. + HorizontalPodAutoscalerCPUInitializationPeriod metav1.Duration + // HorizontalPodAutoscalerInitialReadinessDelay is period after pod start during which readiness + // changes are treated as readiness being set for the first time. The only effect of this is that + // HPA will disregard CPU samples from unready pods that had last readiness change during that + // period. + HorizontalPodAutoscalerInitialReadinessDelay metav1.Duration +} + +type JobControllerConfiguration struct { + // concurrentJobSyncs is the number of job objects that are + // allowed to sync concurrently. Larger number = more responsive jobs, + // but more CPU (and network) load. + ConcurrentJobSyncs int32 +} + +type NamespaceControllerConfiguration struct { + // namespaceSyncPeriod is the period for syncing namespace life-cycle + // updates. + NamespaceSyncPeriod metav1.Duration + // concurrentNamespaceSyncs is the number of namespace objects that are + // allowed to sync concurrently. + ConcurrentNamespaceSyncs int32 +} + +type NodeIPAMControllerConfiguration struct { + // serviceCIDR is CIDR Range for Services in cluster. + ServiceCIDR string + // NodeCIDRMaskSize is the mask size for node cidr in cluster. + NodeCIDRMaskSize int32 +} + +type NodeLifecycleControllerConfiguration struct { + // If set to true enables NoExecute Taints and will evict all not-tolerating + // Pod running on Nodes tainted with this kind of Taints. + EnableTaintManager *bool + // nodeEvictionRate is the number of nodes per second on which pods are deleted in case of node failure when a zone is healthy + NodeEvictionRate float32 + // secondaryNodeEvictionRate is the number of nodes per second on which pods are deleted in case of node failure when a zone is unhealthy + SecondaryNodeEvictionRate float32 + // nodeStartupGracePeriod is the amount of time which we allow starting a node to + // be unresponsive before marking it unhealthy. + NodeStartupGracePeriod metav1.Duration + // nodeMontiorGracePeriod is the amount of time which we allow a running node to be + // unresponsive before marking it unhealthy. Must be N times more than kubelet's + // nodeStatusUpdateFrequency, where N means number of retries allowed for kubelet + // to post node status. + NodeMonitorGracePeriod metav1.Duration + // podEvictionTimeout is the grace period for deleting pods on failed nodes. + PodEvictionTimeout metav1.Duration + // secondaryNodeEvictionRate is implicitly overridden to 0 for clusters smaller than or equal to largeClusterSizeThreshold + LargeClusterSizeThreshold int32 + // Zone is treated as unhealthy in nodeEvictionRate and secondaryNodeEvictionRate when at least + // unhealthyZoneThreshold (no less than 3) of Nodes in the zone are NotReady + UnhealthyZoneThreshold float32 +} + +type PersistentVolumeBinderControllerConfiguration struct { + // pvClaimBinderSyncPeriod is the period for syncing persistent volumes + // and persistent volume claims. + PVClaimBinderSyncPeriod metav1.Duration + // volumeConfiguration holds configuration for volume related features. + VolumeConfiguration VolumeConfiguration +} + +type PodGCControllerConfiguration struct { + // terminatedPodGCThreshold is the number of terminated pods that can exist + // before the terminated pod garbage collector starts deleting terminated pods. + // If <= 0, the terminated pod garbage collector is disabled. + TerminatedPodGCThreshold int32 +} + +type ReplicaSetControllerConfiguration struct { + // concurrentRSSyncs is the number of replica sets that are allowed to sync + // concurrently. Larger number = more responsive replica management, but more + // CPU (and network) load. + ConcurrentRSSyncs int32 +} + +type ReplicationControllerConfiguration struct { + // concurrentRCSyncs is the number of replication controllers that are + // allowed to sync concurrently. Larger number = more responsive replica + // management, but more CPU (and network) load. + ConcurrentRCSyncs int32 +} + +type ResourceQuotaControllerConfiguration struct { + // resourceQuotaSyncPeriod is the period for syncing quota usage status + // in the system. + ResourceQuotaSyncPeriod metav1.Duration + // concurrentResourceQuotaSyncs is the number of resource quotas that are + // allowed to sync concurrently. Larger number = more responsive quota + // management, but more CPU (and network) load. + ConcurrentResourceQuotaSyncs int32 +} + +type SAControllerConfiguration struct { + // serviceAccountKeyFile is the filename containing a PEM-encoded private RSA key + // used to sign service account tokens. + ServiceAccountKeyFile string + // concurrentSATokenSyncs is the number of service account token syncing operations + // that will be done concurrently. + ConcurrentSATokenSyncs int32 + // rootCAFile is the root certificate authority will be included in service + // account's token secret. This must be a valid PEM-encoded CA bundle. + RootCAFile string +} + +type ServiceControllerConfiguration struct { + // concurrentServiceSyncs is the number of services that are + // allowed to sync concurrently. Larger number = more responsive service + // management, but more CPU (and network) load. + ConcurrentServiceSyncs int32 +} From 1c6c45563f4fb959de2880cd57e490ba5b921766 Mon Sep 17 00:00:00 2001 From: stewart-yu Date: Tue, 4 Sep 2018 19:02:08 +0800 Subject: [PATCH 2/8] [kube-controller-manager] create package to hold kube-controller-manager component api --- pkg/controller/apis/config/doc.go | 19 ++ pkg/controller/apis/config/register.go | 43 +++ pkg/controller/apis/config/scheme/scheme.go | 44 +++ pkg/controller/apis/config/types.go | 33 ++- .../apis/config/v1alpha1/conversion.go | 60 ++++ .../apis/config/v1alpha1/defaults.go | 259 +++++++++++------- .../apis/config/v1alpha1/defaults_test.go | 64 +++++ pkg/controller/apis/config/v1alpha1/doc.go | 23 ++ .../apis/config/v1alpha1/register.go | 40 +++ .../.github/PULL_REQUEST_TEMPLATE.md | 2 + .../kube-controller-manager/CONTRIBUTING.md | 7 + .../k8s.io/kube-controller-manager/LICENSE | 202 ++++++++++++++ .../k8s.io/kube-controller-manager/README.md | 25 ++ .../kube-controller-manager/SECURITY_CONTACTS | 17 ++ .../code-of-conduct.md | 3 + .../config/v1alpha1/doc.go | 21 ++ .../config/v1alpha1/register.go | 43 +++ .../config/v1alpha1/types.go | 32 ++- 18 files changed, 832 insertions(+), 105 deletions(-) create mode 100644 pkg/controller/apis/config/doc.go create mode 100644 pkg/controller/apis/config/register.go create mode 100644 pkg/controller/apis/config/scheme/scheme.go create mode 100644 pkg/controller/apis/config/v1alpha1/conversion.go create mode 100644 pkg/controller/apis/config/v1alpha1/defaults_test.go create mode 100644 pkg/controller/apis/config/v1alpha1/doc.go create mode 100644 pkg/controller/apis/config/v1alpha1/register.go create mode 100644 staging/src/k8s.io/kube-controller-manager/.github/PULL_REQUEST_TEMPLATE.md create mode 100644 staging/src/k8s.io/kube-controller-manager/CONTRIBUTING.md create mode 100644 staging/src/k8s.io/kube-controller-manager/LICENSE create mode 100644 staging/src/k8s.io/kube-controller-manager/README.md create mode 100644 staging/src/k8s.io/kube-controller-manager/SECURITY_CONTACTS create mode 100644 staging/src/k8s.io/kube-controller-manager/code-of-conduct.md create mode 100644 staging/src/k8s.io/kube-controller-manager/config/v1alpha1/doc.go create mode 100644 staging/src/k8s.io/kube-controller-manager/config/v1alpha1/register.go diff --git a/pkg/controller/apis/config/doc.go b/pkg/controller/apis/config/doc.go new file mode 100644 index 00000000000..c44cb82e163 --- /dev/null +++ b/pkg/controller/apis/config/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +k8s:deepcopy-gen=package + +package config // import "k8s.io/kubernetes/pkg/controller/apis/config" diff --git a/pkg/controller/apis/config/register.go b/pkg/controller/apis/config/register.go new file mode 100644 index 00000000000..26a1e8f1af9 --- /dev/null +++ b/pkg/controller/apis/config/register.go @@ -0,0 +1,43 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package config + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName is the group name use in this package +const GroupName = "kubecontrollermanager.config.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} + +var ( + // SchemeBuilder providers the handle of collects functions that add things to a scheme + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) + // AddToScheme applies all the stored functions to the scheme. A non-nil error + // indicates that one function failed and the attempt was abandoned. + AddToScheme = SchemeBuilder.AddToScheme +) + +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &KubeControllerManagerConfiguration{}, + ) + return nil +} diff --git a/pkg/controller/apis/config/scheme/scheme.go b/pkg/controller/apis/config/scheme/scheme.go new file mode 100644 index 00000000000..b1bfc739215 --- /dev/null +++ b/pkg/controller/apis/config/scheme/scheme.go @@ -0,0 +1,44 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package scheme + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/serializer" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" + "k8s.io/kubernetes/pkg/controller/apis/config" + "k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1" +) + +var ( + // Scheme defines methods for serializing and deserializing API objects. + Scheme = runtime.NewScheme() + // Codecs provides methods for retrieving codecs and serializers for specific + // versions and content types. + Codecs = serializer.NewCodecFactory(Scheme) +) + +func init() { + AddToScheme(Scheme) +} + +// AddToScheme registers the API group and adds types to a scheme +func AddToScheme(scheme *runtime.Scheme) { + utilruntime.Must(config.AddToScheme(scheme)) + utilruntime.Must(v1alpha1.AddToScheme(scheme)) + utilruntime.Must(scheme.SetVersionPriority(v1alpha1.SchemeGroupVersion)) +} diff --git a/pkg/controller/apis/config/types.go b/pkg/controller/apis/config/types.go index 8421a00bb40..b7abe6b9234 100644 --- a/pkg/controller/apis/config/types.go +++ b/pkg/controller/apis/config/types.go @@ -22,6 +22,7 @@ import ( apiserverconfig "k8s.io/apiserver/pkg/apis/config" ) +// GroupResource describes an group resource. type GroupResource struct { // group is the group portion of the GroupResource. Group string @@ -30,13 +31,17 @@ type GroupResource struct { } // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + +// KubeControllerManagerConfiguration contains elements describing kube-controller manager. type KubeControllerManagerConfiguration struct { metav1.TypeMeta + // Generic holds configuration for a generic controller-manager Generic GenericControllerManagerConfiguration // KubeCloudSharedConfiguration holds configuration for shared related features // both in cloud controller manager and kube-controller manager. KubeCloudShared KubeCloudSharedConfiguration + // AttachDetachControllerConfiguration holds configuration for // AttachDetachController related features. AttachDetachController AttachDetachControllerConfiguration @@ -93,6 +98,7 @@ type KubeControllerManagerConfiguration struct { ServiceController ServiceControllerConfiguration } +// GenericControllerManagerConfiguration holds configuration for a generic controller-manager type GenericControllerManagerConfiguration struct { // port is the port that the controller-manager's http service runs on. Port int32 @@ -118,6 +124,8 @@ type GenericControllerManagerConfiguration struct { Debugging apiserverconfig.DebuggingConfiguration } +// KubeCloudSharedConfiguration contains elements shared by both kube-controller manager +// and cloud-controller manager, but not genericconfig. type KubeCloudSharedConfiguration struct { // CloudProviderConfiguration holds configuration for CloudProvider related features. CloudProvider CloudProviderConfiguration @@ -150,6 +158,8 @@ type KubeCloudSharedConfiguration struct { // of new nodes to cluster. NodeSyncPeriod metav1.Duration } + +// AttachDetachControllerConfiguration contains elements describing AttachDetachController. type AttachDetachControllerConfiguration struct { // Reconciler runs a periodic loop to reconcile the desired state of the with // the actual state of the world by triggering attach detach operations. @@ -160,6 +170,7 @@ type AttachDetachControllerConfiguration struct { ReconcilerSyncLoopPeriod metav1.Duration } +// CloudProviderConfiguration contains basically elements about cloud provider. type CloudProviderConfiguration struct { // Name is the provider for cloud services. Name string @@ -167,6 +178,7 @@ type CloudProviderConfiguration struct { CloudConfigFile string } +// CSRSigningControllerConfiguration contains elements describing CSRSigningController. type CSRSigningControllerConfiguration struct { // clusterSigningCertFile is the filename containing a PEM-encoded // X509 CA certificate used to issue cluster-scoped certificates @@ -179,6 +191,7 @@ type CSRSigningControllerConfiguration struct { ClusterSigningDuration metav1.Duration } +// DaemonSetControllerConfiguration contains elements describing DaemonSetController. type DaemonSetControllerConfiguration struct { // concurrentDaemonSetSyncs is the number of daemonset objects that are // allowed to sync concurrently. Larger number = more responsive daemonset, @@ -186,6 +199,7 @@ type DaemonSetControllerConfiguration struct { ConcurrentDaemonSetSyncs int32 } +// DeploymentControllerConfiguration contains elements describing DeploymentController. type DeploymentControllerConfiguration struct { // concurrentDeploymentSyncs is the number of deployment objects that are // allowed to sync concurrently. Larger number = more responsive deployments, @@ -195,10 +209,11 @@ type DeploymentControllerConfiguration struct { DeploymentControllerSyncPeriod metav1.Duration } +// DeprecatedControllerConfiguration contains elements be deprecated. type DeprecatedControllerConfiguration struct { // DEPRECATED: deletingPodsQps is the number of nodes per second on which pods are deleted in // case of node failure. - DeletingPodsQps float32 + DeletingPodsQPS float32 // DEPRECATED: deletingPodsBurst is the number of nodes on which pods are bursty deleted in // case of node failure. For more details look into RateLimiter. DeletingPodsBurst int32 @@ -207,6 +222,7 @@ type DeprecatedControllerConfiguration struct { RegisterRetryCount int32 } +// EndpointControllerConfiguration contains elements describing EndpointController. type EndpointControllerConfiguration struct { // concurrentEndpointSyncs is the number of endpoint syncing operations // that will be done concurrently. Larger number = faster endpoint updating, @@ -214,6 +230,7 @@ type EndpointControllerConfiguration struct { ConcurrentEndpointSyncs int32 } +// GarbageCollectorControllerConfiguration contains elements describing GarbageCollectorController. type GarbageCollectorControllerConfiguration struct { // enables the generic garbage collector. MUST be synced with the // corresponding flag of the kube-apiserver. WARNING: the generic garbage @@ -226,6 +243,7 @@ type GarbageCollectorControllerConfiguration struct { GCIgnoredResources []GroupResource } +// HPAControllerConfiguration contains elements describing HPAController. type HPAControllerConfiguration struct { // horizontalPodAutoscalerSyncPeriod is the period for syncing the number of // pods in horizontal pod autoscaler. @@ -254,6 +272,7 @@ type HPAControllerConfiguration struct { HorizontalPodAutoscalerInitialReadinessDelay metav1.Duration } +// JobControllerConfiguration contains elements describing JobController. type JobControllerConfiguration struct { // concurrentJobSyncs is the number of job objects that are // allowed to sync concurrently. Larger number = more responsive jobs, @@ -261,6 +280,7 @@ type JobControllerConfiguration struct { ConcurrentJobSyncs int32 } +// NamespaceControllerConfiguration contains elements describing NamespaceController. type NamespaceControllerConfiguration struct { // namespaceSyncPeriod is the period for syncing namespace life-cycle // updates. @@ -270,6 +290,7 @@ type NamespaceControllerConfiguration struct { ConcurrentNamespaceSyncs int32 } +// NodeIPAMControllerConfiguration contains elements describing NodeIPAMController. type NodeIPAMControllerConfiguration struct { // serviceCIDR is CIDR Range for Services in cluster. ServiceCIDR string @@ -277,6 +298,7 @@ type NodeIPAMControllerConfiguration struct { NodeCIDRMaskSize int32 } +// NodeLifecycleControllerConfiguration contains elements describing NodeLifecycleController. type NodeLifecycleControllerConfiguration struct { // If set to true enables NoExecute Taints and will evict all not-tolerating // Pod running on Nodes tainted with this kind of Taints. @@ -302,6 +324,8 @@ type NodeLifecycleControllerConfiguration struct { UnhealthyZoneThreshold float32 } +// PersistentVolumeBinderControllerConfiguration contains elements describing +// PersistentVolumeBinderController. type PersistentVolumeBinderControllerConfiguration struct { // pvClaimBinderSyncPeriod is the period for syncing persistent volumes // and persistent volume claims. @@ -310,6 +334,7 @@ type PersistentVolumeBinderControllerConfiguration struct { VolumeConfiguration VolumeConfiguration } +// PodGCControllerConfiguration contains elements describing PodGCController. type PodGCControllerConfiguration struct { // terminatedPodGCThreshold is the number of terminated pods that can exist // before the terminated pod garbage collector starts deleting terminated pods. @@ -317,6 +342,7 @@ type PodGCControllerConfiguration struct { TerminatedPodGCThreshold int32 } +// ReplicaSetControllerConfiguration contains elements describing ReplicaSetController. type ReplicaSetControllerConfiguration struct { // concurrentRSSyncs is the number of replica sets that are allowed to sync // concurrently. Larger number = more responsive replica management, but more @@ -324,6 +350,7 @@ type ReplicaSetControllerConfiguration struct { ConcurrentRSSyncs int32 } +// ReplicationControllerConfiguration contains elements describing ReplicationController. type ReplicationControllerConfiguration struct { // concurrentRCSyncs is the number of replication controllers that are // allowed to sync concurrently. Larger number = more responsive replica @@ -331,6 +358,7 @@ type ReplicationControllerConfiguration struct { ConcurrentRCSyncs int32 } +// ResourceQuotaControllerConfiguration contains elements describing ResourceQuotaController. type ResourceQuotaControllerConfiguration struct { // resourceQuotaSyncPeriod is the period for syncing quota usage status // in the system. @@ -341,6 +369,7 @@ type ResourceQuotaControllerConfiguration struct { ConcurrentResourceQuotaSyncs int32 } +// SAControllerConfiguration contains elements describing ServiceAccountController. type SAControllerConfiguration struct { // serviceAccountKeyFile is the filename containing a PEM-encoded private RSA key // used to sign service account tokens. @@ -353,6 +382,7 @@ type SAControllerConfiguration struct { RootCAFile string } +// ServiceControllerConfiguration contains elements describing ServiceController. type ServiceControllerConfiguration struct { // concurrentServiceSyncs is the number of services that are // allowed to sync concurrently. Larger number = more responsive service @@ -381,6 +411,7 @@ type VolumeConfiguration struct { FlexVolumePluginDir string } +// PersistentVolumeRecyclerConfiguration contains elements describing persistent volume plugins. type PersistentVolumeRecyclerConfiguration struct { // maximumRetry is number of retries the PV recycler will execute on failure to recycle // PV. diff --git a/pkg/controller/apis/config/v1alpha1/conversion.go b/pkg/controller/apis/config/v1alpha1/conversion.go new file mode 100644 index 00000000000..1bdcdb44a13 --- /dev/null +++ b/pkg/controller/apis/config/v1alpha1/conversion.go @@ -0,0 +1,60 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + "k8s.io/apimachinery/pkg/conversion" + "k8s.io/kube-controller-manager/config/v1alpha1" + "k8s.io/kubernetes/pkg/controller/apis/config" +) + +// Important! The public back-and-forth conversion functions for the types in this generic +// package with ComponentConfig types need to be manually exposed like this in order for +// other packages that reference this package to be able to call these conversion functions +// in an autogenerated manner. +// TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions +// in autogenerated code as well. + +// Convert_v1alpha1_GenericControllerManagerConfiguration_To_config_GenericControllerManagerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_GenericControllerManagerConfiguration_To_config_GenericControllerManagerConfiguration(in *v1alpha1.GenericControllerManagerConfiguration, out *config.GenericControllerManagerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_GenericControllerManagerConfiguration_To_config_GenericControllerManagerConfiguration(in, out, s) +} + +// Convert_config_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration is an autogenerated conversion function. +func Convert_config_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(in *config.GenericControllerManagerConfiguration, out *v1alpha1.GenericControllerManagerConfiguration, s conversion.Scope) error { + return autoConvert_config_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(in, out, s) +} + +// Convert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConfiguration(in *v1alpha1.KubeCloudSharedConfiguration, out *config.KubeCloudSharedConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConfiguration(in, out, s) +} + +// Convert_config_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration is an autogenerated conversion function. +func Convert_config_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(in *config.KubeCloudSharedConfiguration, out *v1alpha1.KubeCloudSharedConfiguration, s conversion.Scope) error { + return autoConvert_config_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(in, out, s) +} + +// Convert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration(in *v1alpha1.ServiceControllerConfiguration, out *config.ServiceControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration(in, out, s) +} + +// Convert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration is an autogenerated conversion function. +func Convert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(in *config.ServiceControllerConfiguration, out *v1alpha1.ServiceControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(in, out, s) +} diff --git a/pkg/controller/apis/config/v1alpha1/defaults.go b/pkg/controller/apis/config/v1alpha1/defaults.go index 5537b5a3ece..6e51aa964d2 100644 --- a/pkg/controller/apis/config/v1alpha1/defaults.go +++ b/pkg/controller/apis/config/v1alpha1/defaults.go @@ -31,124 +31,38 @@ func addDefaultingFuncs(scheme *kruntime.Scheme) error { return RegisterDefaults(scheme) } -func SetDefaults_KubeControllerManagerConfiguration(obj *KubeControllerManagerConfiguration) { +func SetDefaults_KubeControllerManagerConfiguration(obj *kubectrlmgrconfigv1alpha1.KubeControllerManagerConfiguration) { zero := metav1.Duration{} - if obj.EndpointController.ConcurrentEndpointSyncs == 0 { - obj.EndpointController.ConcurrentEndpointSyncs = 5 - } - if obj.ServiceController.ConcurrentServiceSyncs == 0 { - obj.ServiceController.ConcurrentServiceSyncs = 1 - } - if obj.ReplicationController.ConcurrentRCSyncs == 0 { - obj.ReplicationController.ConcurrentRCSyncs = 5 - } - if obj.ReplicaSetController.ConcurrentRSSyncs == 0 { - obj.ReplicaSetController.ConcurrentRSSyncs = 5 - } - if obj.DaemonSetController.ConcurrentDaemonSetSyncs == 0 { - obj.DaemonSetController.ConcurrentDaemonSetSyncs = 2 - } - if obj.JobController.ConcurrentJobSyncs == 0 { - obj.JobController.ConcurrentJobSyncs = 5 - } - if obj.ResourceQuotaController.ConcurrentResourceQuotaSyncs == 0 { - obj.ResourceQuotaController.ConcurrentResourceQuotaSyncs = 5 - } - if obj.DeploymentController.ConcurrentDeploymentSyncs == 0 { - obj.DeploymentController.ConcurrentDeploymentSyncs = 5 - } - if obj.NamespaceController.ConcurrentNamespaceSyncs == 0 { - obj.NamespaceController.ConcurrentNamespaceSyncs = 10 - } - if obj.SAController.ConcurrentSATokenSyncs == 0 { - obj.SAController.ConcurrentSATokenSyncs = 5 - } - if obj.ResourceQuotaController.ResourceQuotaSyncPeriod == zero { - obj.ResourceQuotaController.ResourceQuotaSyncPeriod = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.NamespaceController.NamespaceSyncPeriod == zero { - obj.NamespaceController.NamespaceSyncPeriod = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.PersistentVolumeBinderController.PVClaimBinderSyncPeriod == zero { - obj.PersistentVolumeBinderController.PVClaimBinderSyncPeriod = metav1.Duration{Duration: 15 * time.Second} - } - if obj.HPAController.HorizontalPodAutoscalerSyncPeriod == zero { - obj.HPAController.HorizontalPodAutoscalerSyncPeriod = metav1.Duration{Duration: 15 * time.Second} - } - if obj.HPAController.HorizontalPodAutoscalerUpscaleForbiddenWindow == zero { - obj.HPAController.HorizontalPodAutoscalerUpscaleForbiddenWindow = metav1.Duration{Duration: 3 * time.Minute} - } - if obj.HPAController.HorizontalPodAutoscalerDownscaleStabilizationWindow == zero { - obj.HPAController.HorizontalPodAutoscalerDownscaleStabilizationWindow = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.HPAController.HorizontalPodAutoscalerCPUInitializationPeriod == zero { - obj.HPAController.HorizontalPodAutoscalerCPUInitializationPeriod = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.HPAController.HorizontalPodAutoscalerInitialReadinessDelay == zero { - obj.HPAController.HorizontalPodAutoscalerInitialReadinessDelay = metav1.Duration{Duration: 30 * time.Second} - } - if obj.HPAController.HorizontalPodAutoscalerDownscaleForbiddenWindow == zero { - obj.HPAController.HorizontalPodAutoscalerDownscaleForbiddenWindow = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.HPAController.HorizontalPodAutoscalerTolerance == 0 { - obj.HPAController.HorizontalPodAutoscalerTolerance = 0.1 - } - if obj.DeploymentController.DeploymentControllerSyncPeriod == zero { - obj.DeploymentController.DeploymentControllerSyncPeriod = metav1.Duration{Duration: 30 * time.Second} + if obj.AttachDetachController.ReconcilerSyncLoopPeriod == zero { + obj.AttachDetachController.ReconcilerSyncLoopPeriod = metav1.Duration{Duration: 60 * time.Second} } if obj.DeprecatedController.RegisterRetryCount == 0 { obj.DeprecatedController.RegisterRetryCount = 10 } - if obj.NodeLifecycleController.PodEvictionTimeout == zero { - obj.NodeLifecycleController.PodEvictionTimeout = metav1.Duration{Duration: 5 * time.Minute} - } - if obj.NodeLifecycleController.NodeMonitorGracePeriod == zero { - obj.NodeLifecycleController.NodeMonitorGracePeriod = metav1.Duration{Duration: 40 * time.Second} - } - if obj.NodeLifecycleController.NodeStartupGracePeriod == zero { - obj.NodeLifecycleController.NodeStartupGracePeriod = metav1.Duration{Duration: 60 * time.Second} - } if obj.NodeIPAMController.NodeCIDRMaskSize == 0 { obj.NodeIPAMController.NodeCIDRMaskSize = 24 } - if obj.PodGCController.TerminatedPodGCThreshold == 0 { - obj.PodGCController.TerminatedPodGCThreshold = 12500 + if obj.PersistentVolumeBinderController.PVClaimBinderSyncPeriod == zero { + obj.PersistentVolumeBinderController.PVClaimBinderSyncPeriod = metav1.Duration{Duration: 15 * time.Second} } - if obj.GarbageCollectorController.EnableGarbageCollector == nil { - obj.GarbageCollectorController.EnableGarbageCollector = utilpointer.BoolPtr(true) - } - if obj.GarbageCollectorController.ConcurrentGCSyncs == 0 { - obj.GarbageCollectorController.ConcurrentGCSyncs = 20 - } - if obj.CSRSigningController.ClusterSigningCertFile == "" { - obj.CSRSigningController.ClusterSigningCertFile = "/etc/kubernetes/ca/ca.pem" - } - if obj.CSRSigningController.ClusterSigningKeyFile == "" { - obj.CSRSigningController.ClusterSigningKeyFile = "/etc/kubernetes/ca/ca.key" - } - if obj.CSRSigningController.ClusterSigningDuration == zero { - obj.CSRSigningController.ClusterSigningDuration = metav1.Duration{Duration: 365 * 24 * time.Hour} - } - if obj.AttachDetachController.ReconcilerSyncLoopPeriod == zero { - obj.AttachDetachController.ReconcilerSyncLoopPeriod = metav1.Duration{Duration: 60 * time.Second} - } - if obj.NodeLifecycleController.EnableTaintManager == nil { - obj.NodeLifecycleController.EnableTaintManager = utilpointer.BoolPtr(true) - } - if obj.HPAController.HorizontalPodAutoscalerUseRESTClients == nil { - obj.HPAController.HorizontalPodAutoscalerUseRESTClients = utilpointer.BoolPtr(true) + if obj.SAController.ConcurrentSATokenSyncs == 0 { + obj.SAController.ConcurrentSATokenSyncs = 5 } + // These defaults override the recommended defaults from the apimachineryconfigv1alpha1 package that are applied automatically // These client-connection defaults are specific to the kube-controller-manager if obj.Generic.ClientConnection.QPS == 0.0 { - obj.Generic.ClientConnection.QPS = 50.0 + obj.Generic.ClientConnection.QPS = 20.0 } if obj.Generic.ClientConnection.Burst == 0 { - obj.Generic.ClientConnection.Burst = 100 + obj.Generic.ClientConnection.Burst = 30 } + + // Use the default RecommendedDefaultGenericControllerManagerConfiguration options + RecommendedDefaultGenericControllerManagerConfiguration(&obj.Generic) } -func SetDefaults_GenericControllerManagerConfiguration(obj *GenericControllerManagerConfiguration) { +func RecommendedDefaultGenericControllerManagerConfiguration(obj *kubectrlmgrconfigv1alpha1.GenericControllerManagerConfiguration) { zero := metav1.Duration{} if obj.Address == "" { obj.Address = "0.0.0.0" @@ -162,12 +76,13 @@ func SetDefaults_GenericControllerManagerConfiguration(obj *GenericControllerMan if len(obj.Controllers) == 0 { obj.Controllers = []string{"*"} } + // Use the default ClientConnectionConfiguration and LeaderElectionConfiguration options apimachineryconfigv1alpha1.RecommendedDefaultClientConnectionConfiguration(&obj.ClientConnection) apiserverconfigv1alpha1.RecommendedDefaultLeaderElectionConfiguration(&obj.LeaderElection) } -func SetDefaults_KubeCloudSharedConfiguration(obj *KubeCloudSharedConfiguration) { +func SetDefaults_KubeCloudSharedConfiguration(obj *kubectrlmgrconfigv1alpha1.KubeCloudSharedConfiguration) { zero := metav1.Duration{} if obj.NodeMonitorPeriod == zero { obj.NodeMonitorPeriod = metav1.Duration{Duration: 5 * time.Second} @@ -183,7 +98,145 @@ func SetDefaults_KubeCloudSharedConfiguration(obj *KubeCloudSharedConfiguration) } } -func SetDefaults_PersistentVolumeRecyclerConfiguration(obj *PersistentVolumeRecyclerConfiguration) { +func SetDefaults_ServiceControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.ServiceControllerConfiguration) { + if obj.ConcurrentServiceSyncs == 0 { + obj.ConcurrentServiceSyncs = 1 + } +} + +func SetDefaults_CSRSigningControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.CSRSigningControllerConfiguration) { + zero := metav1.Duration{} + if obj.ClusterSigningCertFile == "" { + obj.ClusterSigningCertFile = "/etc/kubernetes/ca/ca.pem" + } + if obj.ClusterSigningKeyFile == "" { + obj.ClusterSigningKeyFile = "/etc/kubernetes/ca/ca.key" + } + if obj.ClusterSigningDuration == zero { + obj.ClusterSigningDuration = metav1.Duration{Duration: 365 * 24 * time.Hour} + } +} + +func SetDefaults_DeploymentControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.DeploymentControllerConfiguration) { + zero := metav1.Duration{} + if obj.ConcurrentDeploymentSyncs == 0 { + obj.ConcurrentDeploymentSyncs = 5 + } + if obj.DeploymentControllerSyncPeriod == zero { + obj.DeploymentControllerSyncPeriod = metav1.Duration{Duration: 30 * time.Second} + } +} + +func SetDefaults_DaemonSetControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.DaemonSetControllerConfiguration) { + if obj.ConcurrentDaemonSetSyncs == 0 { + obj.ConcurrentDaemonSetSyncs = 2 + } +} + +func SetDefaults_EndpointControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.EndpointControllerConfiguration) { + if obj.ConcurrentEndpointSyncs == 0 { + obj.ConcurrentEndpointSyncs = 5 + } +} + +func SetDefaults_GarbageCollectorControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.GarbageCollectorControllerConfiguration) { + if obj.EnableGarbageCollector == nil { + obj.EnableGarbageCollector = utilpointer.BoolPtr(true) + } + if obj.ConcurrentGCSyncs == 0 { + obj.ConcurrentGCSyncs = 20 + } +} + +func SetDefaults_HPAControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.HPAControllerConfiguration) { + zero := metav1.Duration{} + if obj.HorizontalPodAutoscalerUseRESTClients == nil { + obj.HorizontalPodAutoscalerUseRESTClients = utilpointer.BoolPtr(true) + } + if obj.HorizontalPodAutoscalerSyncPeriod == zero { + obj.HorizontalPodAutoscalerSyncPeriod = metav1.Duration{Duration: 15 * time.Second} + } + if obj.HorizontalPodAutoscalerUpscaleForbiddenWindow == zero { + obj.HorizontalPodAutoscalerUpscaleForbiddenWindow = metav1.Duration{Duration: 3 * time.Minute} + } + if obj.HorizontalPodAutoscalerDownscaleStabilizationWindow == zero { + obj.HorizontalPodAutoscalerDownscaleStabilizationWindow = metav1.Duration{Duration: 5 * time.Minute} + } + if obj.HorizontalPodAutoscalerCPUInitializationPeriod == zero { + obj.HorizontalPodAutoscalerCPUInitializationPeriod = metav1.Duration{Duration: 5 * time.Minute} + } + if obj.HorizontalPodAutoscalerInitialReadinessDelay == zero { + obj.HorizontalPodAutoscalerInitialReadinessDelay = metav1.Duration{Duration: 30 * time.Second} + } + if obj.HorizontalPodAutoscalerDownscaleForbiddenWindow == zero { + obj.HorizontalPodAutoscalerDownscaleForbiddenWindow = metav1.Duration{Duration: 5 * time.Minute} + } + if obj.HorizontalPodAutoscalerTolerance == 0 { + obj.HorizontalPodAutoscalerTolerance = 0.1 + } +} + +func SetDefaults_JobControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.JobControllerConfiguration) { + if obj.ConcurrentJobSyncs == 0 { + obj.ConcurrentJobSyncs = 5 + } +} + +func SetDefaults_NamespaceControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.NamespaceControllerConfiguration) { + zero := metav1.Duration{} + if obj.ConcurrentNamespaceSyncs == 0 { + obj.ConcurrentNamespaceSyncs = 10 + } + if obj.NamespaceSyncPeriod == zero { + obj.NamespaceSyncPeriod = metav1.Duration{Duration: 5 * time.Minute} + } +} + +func SetDefaults_NodeLifecycleControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.NodeLifecycleControllerConfiguration) { + zero := metav1.Duration{} + if obj.PodEvictionTimeout == zero { + obj.PodEvictionTimeout = metav1.Duration{Duration: 5 * time.Minute} + } + if obj.NodeMonitorGracePeriod == zero { + obj.NodeMonitorGracePeriod = metav1.Duration{Duration: 40 * time.Second} + } + if obj.NodeStartupGracePeriod == zero { + obj.NodeStartupGracePeriod = metav1.Duration{Duration: 60 * time.Second} + } + if obj.EnableTaintManager == nil { + obj.EnableTaintManager = utilpointer.BoolPtr(true) + } +} + +func SetDefaults_PodGCControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.PodGCControllerConfiguration) { + if obj.TerminatedPodGCThreshold == 0 { + obj.TerminatedPodGCThreshold = 12500 + } +} + +func SetDefaults_ReplicaSetControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.ReplicaSetControllerConfiguration) { + if obj.ConcurrentRSSyncs == 0 { + obj.ConcurrentRSSyncs = 5 + } +} + +func SetDefaults_ReplicationControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.ReplicationControllerConfiguration) { + if obj.ConcurrentRCSyncs == 0 { + obj.ConcurrentRCSyncs = 5 + } +} + +func SetDefaults_ResourceQuotaControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.ResourceQuotaControllerConfiguration) { + zero := metav1.Duration{} + if obj.ConcurrentResourceQuotaSyncs == 0 { + obj.ConcurrentResourceQuotaSyncs = 5 + } + if obj.ResourceQuotaSyncPeriod == zero { + obj.ResourceQuotaSyncPeriod = metav1.Duration{Duration: 5 * time.Minute} + } +} + +func SetDefaults_PersistentVolumeRecyclerConfiguration(obj *kubectrlmgrconfigv1alpha1.PersistentVolumeRecyclerConfiguration) { if obj.MaximumRetry == 0 { obj.MaximumRetry = 3 } @@ -201,7 +254,7 @@ func SetDefaults_PersistentVolumeRecyclerConfiguration(obj *PersistentVolumeRecy } } -func SetDefaults_VolumeConfiguration(obj *VolumeConfiguration) { +func SetDefaults_VolumeConfiguration(obj *kubectrlmgrconfigv1alpha1.VolumeConfiguration) { if obj.EnableHostPathProvisioning == nil { obj.EnableHostPathProvisioning = utilpointer.BoolPtr(false) } diff --git a/pkg/controller/apis/config/v1alpha1/defaults_test.go b/pkg/controller/apis/config/v1alpha1/defaults_test.go new file mode 100644 index 00000000000..f14c5de34e6 --- /dev/null +++ b/pkg/controller/apis/config/v1alpha1/defaults_test.go @@ -0,0 +1,64 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + "encoding/json" + "reflect" + "testing" + + "k8s.io/api/core/v1" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1" +) + +func TestKubeControllerDefaultsRoundTrip(t *testing.T) { + ks1 := &kubectrlmgrconfigv1alpha1.KubeControllerManagerConfiguration{} + SetDefaults_KubeControllerManagerConfiguration(ks1) + cm, err := convertObjToConfigMap("KubeControllerManagerConfiguration", ks1) + if err != nil { + t.Errorf("unexpected ConvertObjToConfigMap error %v", err) + } + + ks2 := &kubectrlmgrconfigv1alpha1.KubeControllerManagerConfiguration{} + if err = json.Unmarshal([]byte(cm.Data["KubeControllerManagerConfiguration"]), ks2); err != nil { + t.Errorf("unexpected error unserializing controller manager config %v", err) + } + + if !reflect.DeepEqual(ks2, ks1) { + t.Errorf("Expected:\n%#v\n\nGot:\n%#v", ks1, ks2) + } +} + +// convertObjToConfigMap converts an object to a ConfigMap. +// This is specifically meant for ComponentConfigs. +func convertObjToConfigMap(name string, obj runtime.Object) (*v1.ConfigMap, error) { + eJSONBytes, err := json.Marshal(obj) + if err != nil { + return nil, err + } + cm := &v1.ConfigMap{ + ObjectMeta: metav1.ObjectMeta{ + Name: name, + }, + Data: map[string]string{ + name: string(eJSONBytes[:]), + }, + } + return cm, nil +} diff --git a/pkg/controller/apis/config/v1alpha1/doc.go b/pkg/controller/apis/config/v1alpha1/doc.go new file mode 100644 index 00000000000..fe43aa23302 --- /dev/null +++ b/pkg/controller/apis/config/v1alpha1/doc.go @@ -0,0 +1,23 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/apis/config +// +k8s:conversion-gen-external-types=k8s.io/kube-controller-manager/config/v1alpha1 +// +k8s:defaulter-gen=TypeMeta +// +k8s:defaulter-gen-input=../../../../../vendor/k8s.io/kube-controller-manager/config/v1alpha1 +// +groupName=kubecontrollermanager.config.k8s.io + +package v1alpha1 // import "k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1" diff --git a/pkg/controller/apis/config/v1alpha1/register.go b/pkg/controller/apis/config/v1alpha1/register.go new file mode 100644 index 00000000000..23057ab1663 --- /dev/null +++ b/pkg/controller/apis/config/v1alpha1/register.go @@ -0,0 +1,40 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + "k8s.io/apimachinery/pkg/runtime/schema" + kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1" +) + +// GroupName is the group name use in this package +const GroupName = "kubecontrollermanager.config.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"} + +var ( + localSchemeBuilder = &kubectrlmgrconfigv1alpha1.SchemeBuilder + AddToScheme = localSchemeBuilder.AddToScheme +) + +func init() { + // We only register manually written functions here. The registration of the + // generated functions takes place in the generated files. The separation + // makes the code compile even when the generated files are missing. + localSchemeBuilder.Register(addDefaultingFuncs) +} diff --git a/staging/src/k8s.io/kube-controller-manager/.github/PULL_REQUEST_TEMPLATE.md b/staging/src/k8s.io/kube-controller-manager/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000000..e559c074bb5 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,2 @@ +Sorry, we do not accept changes directly against this repository. Please see +CONTRIBUTING.md for information on where and how to contribute instead. diff --git a/staging/src/k8s.io/kube-controller-manager/CONTRIBUTING.md b/staging/src/k8s.io/kube-controller-manager/CONTRIBUTING.md new file mode 100644 index 00000000000..12511d88107 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/CONTRIBUTING.md @@ -0,0 +1,7 @@ +# Contributing guidelines + +Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes. + +This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/kube-controller-manager](https://git.k8s.io/kubernetes/staging/src/k8s.io/kube-controller-manager) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot). + +Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/staging.md) for more information diff --git a/staging/src/k8s.io/kube-controller-manager/LICENSE b/staging/src/k8s.io/kube-controller-manager/LICENSE new file mode 100644 index 00000000000..d6456956733 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/staging/src/k8s.io/kube-controller-manager/README.md b/staging/src/k8s.io/kube-controller-manager/README.md new file mode 100644 index 00000000000..a1e8b89a827 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/README.md @@ -0,0 +1,25 @@ +# Kube-controller-manager + +## Purpose + +This library contains code to expose kube-controller-manager API. + + +## Compatibility + +There are *NO compatibility guarantees* for this repository, yet. It is in direct support of Kubernetes, so branches +will track Kubernetes and be compatible with that repo. As we more cleanly separate the layers, we will review the +compatibility guarantee. We have a goal to make this easier to use in the future. + + +## Where does it come from? + +`kube-controller-manager` is synced from https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/kube-controller-manager. +Code changes are made in that location, merged into `k8s.io/kubernetes` and later synced here. + + +## Things you should *NOT* do + + 1. Directly modify any files under `pkg` in this repo. Those are driven from `k8s.io/kubernetes/staging/src/k8s.io/kube-controller-manager`. + 2. Expect compatibility. This repo is changing quickly in direct support of + Kubernetes and the kube-controller-manager API. diff --git a/staging/src/k8s.io/kube-controller-manager/SECURITY_CONTACTS b/staging/src/k8s.io/kube-controller-manager/SECURITY_CONTACTS new file mode 100644 index 00000000000..69eea9ee8eb --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/SECURITY_CONTACTS @@ -0,0 +1,17 @@ +# Defined below are the security contacts for this repo. +# +# They are the contact point for the Product Security Team to reach out +# to for triaging and handling of incoming issues. +# +# The below names agree to abide by the +# [Embargo Policy](https://github.com/kubernetes/sig-release/blob/master/security-release-process-documentation/security-release-process.md#embargo-policy) +# and will be removed and replaced if they violate that agreement. +# +# DO NOT REPORT SECURITY VULNERABILITIES DIRECTLY TO THESE NAMES, FOLLOW THE +# INSTRUCTIONS AT https://kubernetes.io/security/ + +cjcullen +liggitt +luxas +sttts +tallclair diff --git a/staging/src/k8s.io/kube-controller-manager/code-of-conduct.md b/staging/src/k8s.io/kube-controller-manager/code-of-conduct.md new file mode 100644 index 00000000000..0d15c00cf32 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/code-of-conduct.md @@ -0,0 +1,3 @@ +# Kubernetes Community Code of Conduct + +Please refer to our [Kubernetes Community Code of Conduct](https://git.k8s.io/community/code-of-conduct.md) diff --git a/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/doc.go b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/doc.go new file mode 100644 index 00000000000..1631186e50f --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/doc.go @@ -0,0 +1,21 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +k8s:deepcopy-gen=package +// +k8s:openapi-gen=true +// +groupName=kubecontrollermanager.config.k8s.io + +package v1alpha1 // import "k8s.io/kube-controller-manager/config/v1alpha1" diff --git a/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/register.go b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/register.go new file mode 100644 index 00000000000..94710dd6e11 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/register.go @@ -0,0 +1,43 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName is the group name use in this package +const GroupName = "kubecontrollermanager.config.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"} + +var ( + // SchemeBuilder providers the handle of collects functions that add things to a scheme. + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) + // AddToScheme applies all the stored functions to the scheme. A non-nil error + // indicates that one function failed and the attempt was abandoned. + AddToScheme = SchemeBuilder.AddToScheme +) + +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &KubeControllerManagerConfiguration{}, + ) + return nil +} diff --git a/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/types.go b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/types.go index d831a88c852..5bcfadea6f5 100644 --- a/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/types.go +++ b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/types.go @@ -22,6 +22,7 @@ import ( apiserverconfigv1alpha1 "k8s.io/apiserver/pkg/apis/config/v1alpha1" ) +// PersistentVolumeRecyclerConfiguration contains elements describing persistent volume plugins. type PersistentVolumeRecyclerConfiguration struct { // maximumRetry is number of retries the PV recycler will execute on failure to recycle // PV. @@ -70,6 +71,7 @@ type VolumeConfiguration struct { FlexVolumePluginDir string } +// GroupResource describes an group resource. type GroupResource struct { // group is the group portion of the GroupResource. Group string @@ -78,13 +80,17 @@ type GroupResource struct { } // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + +// KubeControllerManagerConfiguration contains elements describing kube-controller manager. type KubeControllerManagerConfiguration struct { metav1.TypeMeta `json:",inline"` + // Generic holds configuration for a generic controller-manager Generic GenericControllerManagerConfiguration // KubeCloudSharedConfiguration holds configuration for shared related features // both in cloud controller manager and kube-controller manager. KubeCloudShared KubeCloudSharedConfiguration + // AttachDetachControllerConfiguration holds configuration for // AttachDetachController related features. AttachDetachController AttachDetachControllerConfiguration @@ -141,6 +147,7 @@ type KubeControllerManagerConfiguration struct { ServiceController ServiceControllerConfiguration } +// GenericControllerManagerConfiguration holds configuration for a generic controller-manager. type GenericControllerManagerConfiguration struct { // port is the port that the controller-manager's http service runs on. Port int32 @@ -166,6 +173,8 @@ type GenericControllerManagerConfiguration struct { Debugging apiserverconfigv1alpha1.DebuggingConfiguration } +// KubeCloudSharedConfiguration contains elements shared by both kube-controller manager +// and cloud-controller manager, but not genericconfig. type KubeCloudSharedConfiguration struct { // CloudProviderConfiguration holds configuration for CloudProvider related features. CloudProvider CloudProviderConfiguration @@ -199,6 +208,7 @@ type KubeCloudSharedConfiguration struct { NodeSyncPeriod metav1.Duration } +// AttachDetachControllerConfiguration contains elements describing AttachDetachController. type AttachDetachControllerConfiguration struct { // Reconciler runs a periodic loop to reconcile the desired state of the with // the actual state of the world by triggering attach detach operations. @@ -209,6 +219,7 @@ type AttachDetachControllerConfiguration struct { ReconcilerSyncLoopPeriod metav1.Duration } +// CloudProviderConfiguration contains basically elements about cloud provider. type CloudProviderConfiguration struct { // Name is the provider for cloud services. Name string @@ -216,6 +227,7 @@ type CloudProviderConfiguration struct { CloudConfigFile string } +// CSRSigningControllerConfiguration contains elements describing CSRSigningController. type CSRSigningControllerConfiguration struct { // clusterSigningCertFile is the filename containing a PEM-encoded // X509 CA certificate used to issue cluster-scoped certificates @@ -228,6 +240,7 @@ type CSRSigningControllerConfiguration struct { ClusterSigningDuration metav1.Duration } +// DaemonSetControllerConfiguration contains elements describing DaemonSetController. type DaemonSetControllerConfiguration struct { // concurrentDaemonSetSyncs is the number of daemonset objects that are // allowed to sync concurrently. Larger number = more responsive daemonset, @@ -235,6 +248,7 @@ type DaemonSetControllerConfiguration struct { ConcurrentDaemonSetSyncs int32 } +// DeploymentControllerConfiguration contains elements describing DeploymentController. type DeploymentControllerConfiguration struct { // concurrentDeploymentSyncs is the number of deployment objects that are // allowed to sync concurrently. Larger number = more responsive deployments, @@ -244,10 +258,11 @@ type DeploymentControllerConfiguration struct { DeploymentControllerSyncPeriod metav1.Duration } +// DeprecatedControllerConfiguration contains elements be deprecated. type DeprecatedControllerConfiguration struct { // DEPRECATED: deletingPodsQps is the number of nodes per second on which pods are deleted in // case of node failure. - DeletingPodsQps float32 + DeletingPodsQPS float32 // DEPRECATED: deletingPodsBurst is the number of nodes on which pods are bursty deleted in // case of node failure. For more details look into RateLimiter. DeletingPodsBurst int32 @@ -256,6 +271,7 @@ type DeprecatedControllerConfiguration struct { RegisterRetryCount int32 } +// EndpointControllerConfiguration contains elements describing EndpointController. type EndpointControllerConfiguration struct { // concurrentEndpointSyncs is the number of endpoint syncing operations // that will be done concurrently. Larger number = faster endpoint updating, @@ -263,6 +279,7 @@ type EndpointControllerConfiguration struct { ConcurrentEndpointSyncs int32 } +// GarbageCollectorControllerConfiguration contains elements describing GarbageCollectorController. type GarbageCollectorControllerConfiguration struct { // enables the generic garbage collector. MUST be synced with the // corresponding flag of the kube-apiserver. WARNING: the generic garbage @@ -275,6 +292,7 @@ type GarbageCollectorControllerConfiguration struct { GCIgnoredResources []GroupResource } +// HPAControllerConfiguration contains elements describing HPAController. type HPAControllerConfiguration struct { // HorizontalPodAutoscalerSyncPeriod is the period for syncing the number of // pods in horizontal pod autoscaler. @@ -303,6 +321,7 @@ type HPAControllerConfiguration struct { HorizontalPodAutoscalerInitialReadinessDelay metav1.Duration } +// JobControllerConfiguration contains elements describing JobController. type JobControllerConfiguration struct { // concurrentJobSyncs is the number of job objects that are // allowed to sync concurrently. Larger number = more responsive jobs, @@ -310,6 +329,7 @@ type JobControllerConfiguration struct { ConcurrentJobSyncs int32 } +// NamespaceControllerConfiguration contains elements describing NamespaceController. type NamespaceControllerConfiguration struct { // namespaceSyncPeriod is the period for syncing namespace life-cycle // updates. @@ -319,6 +339,7 @@ type NamespaceControllerConfiguration struct { ConcurrentNamespaceSyncs int32 } +// NodeIPAMControllerConfiguration contains elements describing NodeIpamController. type NodeIPAMControllerConfiguration struct { // serviceCIDR is CIDR Range for Services in cluster. ServiceCIDR string @@ -326,6 +347,7 @@ type NodeIPAMControllerConfiguration struct { NodeCIDRMaskSize int32 } +// NodeLifecycleControllerConfiguration contains elements describing NodeLifecycleController. type NodeLifecycleControllerConfiguration struct { // If set to true enables NoExecute Taints and will evict all not-tolerating // Pod running on Nodes tainted with this kind of Taints. @@ -351,6 +373,8 @@ type NodeLifecycleControllerConfiguration struct { UnhealthyZoneThreshold float32 } +// PersistentVolumeBinderControllerConfiguration contains elements describing +// PersistentVolumeBinderController. type PersistentVolumeBinderControllerConfiguration struct { // pvClaimBinderSyncPeriod is the period for syncing persistent volumes // and persistent volume claims. @@ -359,6 +383,7 @@ type PersistentVolumeBinderControllerConfiguration struct { VolumeConfiguration VolumeConfiguration } +// PodGCControllerConfiguration contains elements describing PodGCController. type PodGCControllerConfiguration struct { // terminatedPodGCThreshold is the number of terminated pods that can exist // before the terminated pod garbage collector starts deleting terminated pods. @@ -366,6 +391,7 @@ type PodGCControllerConfiguration struct { TerminatedPodGCThreshold int32 } +// ReplicaSetControllerConfiguration contains elements describing ReplicaSetController. type ReplicaSetControllerConfiguration struct { // concurrentRSSyncs is the number of replica sets that are allowed to sync // concurrently. Larger number = more responsive replica management, but more @@ -373,6 +399,7 @@ type ReplicaSetControllerConfiguration struct { ConcurrentRSSyncs int32 } +// ReplicationControllerConfiguration contains elements describing ReplicationController. type ReplicationControllerConfiguration struct { // concurrentRCSyncs is the number of replication controllers that are // allowed to sync concurrently. Larger number = more responsive replica @@ -380,6 +407,7 @@ type ReplicationControllerConfiguration struct { ConcurrentRCSyncs int32 } +// ResourceQuotaControllerConfiguration contains elements describing ResourceQuotaController. type ResourceQuotaControllerConfiguration struct { // resourceQuotaSyncPeriod is the period for syncing quota usage status // in the system. @@ -390,6 +418,7 @@ type ResourceQuotaControllerConfiguration struct { ConcurrentResourceQuotaSyncs int32 } +// SAControllerConfiguration contains elements describing ServiceAccountController. type SAControllerConfiguration struct { // serviceAccountKeyFile is the filename containing a PEM-encoded private RSA key // used to sign service account tokens. @@ -402,6 +431,7 @@ type SAControllerConfiguration struct { RootCAFile string } +// ServiceControllerConfiguration contains elements describing ServiceController. type ServiceControllerConfiguration struct { // concurrentServiceSyncs is the number of services that are // allowed to sync concurrently. Larger number = more responsive service From a226928dc93402dbc172bb55f4bd0c34d124f5a5 Mon Sep 17 00:00:00 2001 From: stewart-yu Date: Tue, 4 Sep 2018 17:00:57 +0800 Subject: [PATCH 3/8] [kube-controller-manager] fix some reference from pkg/apis/componentconfig about kube-controller-manager api --- pkg/apis/componentconfig/types.go | 9 ++++----- pkg/apis/componentconfig/v1alpha1/defaults.go | 10 ++++------ pkg/apis/componentconfig/v1alpha1/defaults_test.go | 14 +++++++------- pkg/apis/componentconfig/v1alpha1/doc.go | 1 + pkg/apis/componentconfig/v1alpha1/types.go | 9 ++++----- 5 files changed, 20 insertions(+), 23 deletions(-) diff --git a/pkg/apis/componentconfig/types.go b/pkg/apis/componentconfig/types.go index 8dfc0660209..7da38398556 100644 --- a/pkg/apis/componentconfig/types.go +++ b/pkg/apis/componentconfig/types.go @@ -17,9 +17,8 @@ limitations under the License. package componentconfig import ( - apimachineryconfig "k8s.io/apimachinery/pkg/apis/config" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - apiserverconfig "k8s.io/apiserver/pkg/apis/config" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object @@ -28,14 +27,14 @@ type CloudControllerManagerConfiguration struct { metav1.TypeMeta // Generic holds configuration for a generic controller-manager - Generic GenericControllerManagerConfiguration + Generic kubectrlmgrconfig.GenericControllerManagerConfiguration // KubeCloudSharedConfiguration holds configuration for shared related features // both in cloud controller manager and kube-controller manager. - KubeCloudShared KubeCloudSharedConfiguration + KubeCloudShared kubectrlmgrconfig.KubeCloudSharedConfiguration // ServiceControllerConfiguration holds configuration for ServiceController // related features. - ServiceController ServiceControllerConfiguration + ServiceController kubectrlmgrconfig.ServiceControllerConfiguration // NodeStatusUpdateFrequency is the frequency at which the controller updates nodes' status NodeStatusUpdateFrequency metav1.Duration } diff --git a/pkg/apis/componentconfig/v1alpha1/defaults.go b/pkg/apis/componentconfig/v1alpha1/defaults.go index 15476457044..dff62ec4b8c 100644 --- a/pkg/apis/componentconfig/v1alpha1/defaults.go +++ b/pkg/apis/componentconfig/v1alpha1/defaults.go @@ -19,11 +19,9 @@ package v1alpha1 import ( "time" - apimachineryconfigv1alpha1 "k8s.io/apimachinery/pkg/apis/config/v1alpha1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" kruntime "k8s.io/apimachinery/pkg/runtime" - apiserverconfigv1alpha1 "k8s.io/apiserver/pkg/apis/config/v1alpha1" - utilpointer "k8s.io/utils/pointer" + kubectrlmgrconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1" ) func addDefaultingFuncs(scheme *kruntime.Scheme) error { @@ -32,9 +30,6 @@ func addDefaultingFuncs(scheme *kruntime.Scheme) error { func SetDefaults_CloudControllerManagerConfiguration(obj *CloudControllerManagerConfiguration) { zero := metav1.Duration{} - if obj.ServiceController.ConcurrentServiceSyncs == 0 { - obj.ServiceController.ConcurrentServiceSyncs = 1 - } if obj.NodeStatusUpdateFrequency == zero { obj.NodeStatusUpdateFrequency = metav1.Duration{Duration: 5 * time.Minute} } @@ -46,4 +41,7 @@ func SetDefaults_CloudControllerManagerConfiguration(obj *CloudControllerManager if obj.Generic.ClientConnection.Burst == 0 { obj.Generic.ClientConnection.Burst = 30 } + + // Use the default RecommendedDefaultGenericControllerManagerConfiguration options + kubectrlmgrconfigv1alpha1.RecommendedDefaultGenericControllerManagerConfiguration(&obj.Generic) } diff --git a/pkg/apis/componentconfig/v1alpha1/defaults_test.go b/pkg/apis/componentconfig/v1alpha1/defaults_test.go index 3e8b897f78e..46d10194dce 100644 --- a/pkg/apis/componentconfig/v1alpha1/defaults_test.go +++ b/pkg/apis/componentconfig/v1alpha1/defaults_test.go @@ -24,17 +24,17 @@ import ( componentconfig "k8s.io/kubernetes/pkg/apis/componentconfig" ) -func TestControllerDefaultsRoundTrip(t *testing.T) { - ks1 := &KubeControllerManagerConfiguration{} - SetDefaults_KubeControllerManagerConfiguration(ks1) - cm, err := componentconfig.ConvertObjToConfigMap("KubeControllerManagerConfiguration", ks1) +func TestCloudControllerDefaultsRoundTrip(t *testing.T) { + ks1 := &CloudControllerManagerConfiguration{} + SetDefaults_CloudControllerManagerConfiguration(ks1) + cm, err := componentconfig.ConvertObjToConfigMap("CloudControllerManagerConfiguration", ks1) if err != nil { t.Errorf("unexpected ConvertObjToConfigMap error %v", err) } - ks2 := &KubeControllerManagerConfiguration{} - if err = json.Unmarshal([]byte(cm.Data["KubeControllerManagerConfiguration"]), ks2); err != nil { - t.Errorf("unexpected error unserializing controller manager config %v", err) + ks2 := &CloudControllerManagerConfiguration{} + if err = json.Unmarshal([]byte(cm.Data["CloudControllerManagerConfiguration"]), ks2); err != nil { + t.Errorf("unexpected error unserializing cloud controller manager config %v", err) } if !reflect.DeepEqual(ks2, ks1) { diff --git a/pkg/apis/componentconfig/v1alpha1/doc.go b/pkg/apis/componentconfig/v1alpha1/doc.go index 0cd4bdf9c46..0576c10c2ba 100644 --- a/pkg/apis/componentconfig/v1alpha1/doc.go +++ b/pkg/apis/componentconfig/v1alpha1/doc.go @@ -23,6 +23,7 @@ limitations under the License. // +k8s:conversion-gen=k8s.io/kubernetes/pkg/apis/componentconfig // +k8s:conversion-gen=k8s.io/apimachinery/pkg/apis/config/v1alpha1 // +k8s:conversion-gen=k8s.io/apiserver/pkg/apis/config/v1alpha1 +// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1 // +k8s:openapi-gen=true // +k8s:defaulter-gen=TypeMeta diff --git a/pkg/apis/componentconfig/v1alpha1/types.go b/pkg/apis/componentconfig/v1alpha1/types.go index 34ca2839153..027f0143add 100644 --- a/pkg/apis/componentconfig/v1alpha1/types.go +++ b/pkg/apis/componentconfig/v1alpha1/types.go @@ -17,9 +17,8 @@ limitations under the License. package v1alpha1 import ( - apimachineryconfigv1alpha1 "k8s.io/apimachinery/pkg/apis/config/v1alpha1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - apiserverconfigv1alpha1 "k8s.io/apiserver/pkg/apis/config/v1alpha1" + kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1" ) // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object @@ -28,13 +27,13 @@ type CloudControllerManagerConfiguration struct { metav1.TypeMeta `json:",inline"` // Generic holds configuration for a generic controller-manager - Generic GenericControllerManagerConfiguration + Generic kubectrlmgrconfigv1alpha1.GenericControllerManagerConfiguration // KubeCloudSharedConfiguration holds configuration for shared related features // both in cloud controller manager and kube-controller manager. - KubeCloudShared KubeCloudSharedConfiguration + KubeCloudShared kubectrlmgrconfigv1alpha1.KubeCloudSharedConfiguration // ServiceControllerConfiguration holds configuration for ServiceController // related features. - ServiceController ServiceControllerConfiguration + ServiceController kubectrlmgrconfigv1alpha1.ServiceControllerConfiguration // NodeStatusUpdateFrequency is the frequency at which the controller updates nodes' status NodeStatusUpdateFrequency metav1.Duration } From 6a90b7f780118eda6067bb271448c0971b2e9ed9 Mon Sep 17 00:00:00 2001 From: stewart-yu Date: Mon, 3 Sep 2018 22:45:47 +0800 Subject: [PATCH 4/8] [kube-controller-manager] fix some reference from cmd/*-controller-manager about kubeControllerManagerConfiguration --- .../app/options/cloudprovider.go | 4 ++-- cmd/controller-manager/app/options/generic.go | 6 ++--- .../app/options/kubecloudshared.go | 6 ++--- .../app/options/servicecontroller.go | 4 ++-- .../app/config/config.go | 4 ++-- .../app/controllermanager.go | 4 ++-- .../app/options/attachdetachcontroller.go | 4 ++-- .../app/options/csrsigningcontroller.go | 4 ++-- .../app/options/daemonsetcontroller.go | 4 ++-- .../app/options/deploymentcontroller.go | 4 ++-- .../app/options/deprecatedcontroller.go | 6 ++--- .../app/options/endpointcontroller.go | 4 ++-- .../app/options/garbagecollectorcontroller.go | 6 ++--- .../app/options/hpacontroller.go | 4 ++-- .../app/options/jobcontroller.go | 4 ++-- .../app/options/namespacecontroller.go | 4 ++-- .../app/options/nodeipamcontroller.go | 4 ++-- .../app/options/nodelifecyclecontroller.go | 4 ++-- .../app/options/options.go | 23 ++++++++++--------- .../app/options/options_test.go | 10 ++++---- .../persistentvolumebindercontroller.go | 6 ++--- .../app/options/podgccontroller.go | 4 ++-- .../app/options/replicasetcontroller.go | 4 ++-- .../app/options/replicationcontroller.go | 4 ++-- .../app/options/resourcequotacontroller.go | 4 ++-- .../app/options/serviceaccountcontroller.go | 4 ++-- cmd/kube-controller-manager/app/plugins.go | 18 +++++++-------- 27 files changed, 79 insertions(+), 78 deletions(-) diff --git a/cmd/controller-manager/app/options/cloudprovider.go b/cmd/controller-manager/app/options/cloudprovider.go index 37a340e3b59..2c22d1b3f17 100644 --- a/cmd/controller-manager/app/options/cloudprovider.go +++ b/cmd/controller-manager/app/options/cloudprovider.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // CloudProviderOptions holds the cloudprovider options. @@ -44,7 +44,7 @@ func (s *CloudProviderOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up cloudprovider config with options. -func (s *CloudProviderOptions) ApplyTo(cfg *componentconfig.CloudProviderConfiguration) error { +func (s *CloudProviderOptions) ApplyTo(cfg *kubectrlmgrconfig.CloudProviderConfiguration) error { if s == nil { return nil } diff --git a/cmd/controller-manager/app/options/generic.go b/cmd/controller-manager/app/options/generic.go index 61c4c41f89c..3056038f40d 100644 --- a/cmd/controller-manager/app/options/generic.go +++ b/cmd/controller-manager/app/options/generic.go @@ -25,8 +25,8 @@ import ( "k8s.io/apimachinery/pkg/util/sets" apiserverconfig "k8s.io/apiserver/pkg/apis/config" apiserverflag "k8s.io/apiserver/pkg/util/flag" - "k8s.io/kubernetes/pkg/apis/componentconfig" "k8s.io/kubernetes/pkg/client/leaderelectionconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // GenericControllerManagerConfigurationOptions holds the options which are generic. @@ -44,7 +44,7 @@ type GenericControllerManagerConfigurationOptions struct { // NewGenericControllerManagerConfigurationOptions returns generic configuration default values for both // the kube-controller-manager and the cloud-contoller-manager. Any common changes should // be made here. Any individual changes should be made in that controller. -func NewGenericControllerManagerConfigurationOptions(cfg componentconfig.GenericControllerManagerConfiguration) *GenericControllerManagerConfigurationOptions { +func NewGenericControllerManagerConfigurationOptions(cfg kubectrlmgrconfig.GenericControllerManagerConfiguration) *GenericControllerManagerConfigurationOptions { o := &GenericControllerManagerConfigurationOptions{ Port: cfg.Port, Address: cfg.Address, @@ -82,7 +82,7 @@ func (o *GenericControllerManagerConfigurationOptions) AddFlags(fss *apiserverfl } // ApplyTo fills up generic config with options. -func (o *GenericControllerManagerConfigurationOptions) ApplyTo(cfg *componentconfig.GenericControllerManagerConfiguration) error { +func (o *GenericControllerManagerConfigurationOptions) ApplyTo(cfg *kubectrlmgrconfig.GenericControllerManagerConfiguration) error { if o == nil { return nil } diff --git a/cmd/controller-manager/app/options/kubecloudshared.go b/cmd/controller-manager/app/options/kubecloudshared.go index 2d777915f92..956571892bd 100644 --- a/cmd/controller-manager/app/options/kubecloudshared.go +++ b/cmd/controller-manager/app/options/kubecloudshared.go @@ -20,7 +20,7 @@ import ( "github.com/spf13/pflag" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // KubeCloudSharedOptions holds the options shared between kube-controller-manager @@ -43,7 +43,7 @@ type KubeCloudSharedOptions struct { // NewKubeCloudSharedOptions returns common/default configuration values for both // the kube-controller-manager and the cloud-contoller-manager. Any common changes should // be made here. Any individual changes should be made in that controller. -func NewKubeCloudSharedOptions(cfg componentconfig.KubeCloudSharedConfiguration) *KubeCloudSharedOptions { +func NewKubeCloudSharedOptions(cfg kubectrlmgrconfig.KubeCloudSharedConfiguration) *KubeCloudSharedOptions { o := &KubeCloudSharedOptions{ CloudProvider: &CloudProviderOptions{}, ExternalCloudVolumePlugin: cfg.ExternalCloudVolumePlugin, @@ -84,7 +84,7 @@ func (o *KubeCloudSharedOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up KubeCloudShared config with options. -func (o *KubeCloudSharedOptions) ApplyTo(cfg *componentconfig.KubeCloudSharedConfiguration) error { +func (o *KubeCloudSharedOptions) ApplyTo(cfg *kubectrlmgrconfig.KubeCloudSharedConfiguration) error { if o == nil { return nil } diff --git a/cmd/controller-manager/app/options/servicecontroller.go b/cmd/controller-manager/app/options/servicecontroller.go index b14142eca9b..f6b7ab628b2 100644 --- a/cmd/controller-manager/app/options/servicecontroller.go +++ b/cmd/controller-manager/app/options/servicecontroller.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // ServiceControllerOptions holds the ServiceController options. @@ -37,7 +37,7 @@ func (o *ServiceControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up ServiceController config with options. -func (o *ServiceControllerOptions) ApplyTo(cfg *componentconfig.ServiceControllerConfiguration) error { +func (o *ServiceControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.ServiceControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/config/config.go b/cmd/kube-controller-manager/app/config/config.go index eafc6a38583..d3125b4a512 100644 --- a/cmd/kube-controller-manager/app/config/config.go +++ b/cmd/kube-controller-manager/app/config/config.go @@ -21,12 +21,12 @@ import ( clientset "k8s.io/client-go/kubernetes" restclient "k8s.io/client-go/rest" "k8s.io/client-go/tools/record" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // Config is the main context object for the controller manager. type Config struct { - ComponentConfig componentconfig.KubeControllerManagerConfiguration + ComponentConfig kubectrlmgrconfig.KubeControllerManagerConfiguration SecureServing *apiserver.SecureServingInfo // LoopbackClientConfig is a config for a privileged loopback connection diff --git a/cmd/kube-controller-manager/app/controllermanager.go b/cmd/kube-controller-manager/app/controllermanager.go index ba1df52136f..12e7c35faea 100644 --- a/cmd/kube-controller-manager/app/controllermanager.go +++ b/cmd/kube-controller-manager/app/controllermanager.go @@ -50,9 +50,9 @@ import ( genericcontrollermanager "k8s.io/kubernetes/cmd/controller-manager/app" "k8s.io/kubernetes/cmd/kube-controller-manager/app/config" "k8s.io/kubernetes/cmd/kube-controller-manager/app/options" - "k8s.io/kubernetes/pkg/apis/componentconfig" "k8s.io/kubernetes/pkg/cloudprovider" "k8s.io/kubernetes/pkg/controller" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" serviceaccountcontroller "k8s.io/kubernetes/pkg/controller/serviceaccount" "k8s.io/kubernetes/pkg/serviceaccount" "k8s.io/kubernetes/pkg/util/configz" @@ -250,7 +250,7 @@ type ControllerContext struct { InformerFactory informers.SharedInformerFactory // ComponentConfig provides access to init options for a given controller - ComponentConfig componentconfig.KubeControllerManagerConfiguration + ComponentConfig kubectrlmgrconfig.KubeControllerManagerConfiguration // DeferredDiscoveryRESTMapper is a RESTMapper that will defer // initialization of the RESTMapper until the first mapping is diff --git a/cmd/kube-controller-manager/app/options/attachdetachcontroller.go b/cmd/kube-controller-manager/app/options/attachdetachcontroller.go index 8f620f4b95d..ea0102c5675 100644 --- a/cmd/kube-controller-manager/app/options/attachdetachcontroller.go +++ b/cmd/kube-controller-manager/app/options/attachdetachcontroller.go @@ -20,7 +20,7 @@ import ( "github.com/spf13/pflag" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // AttachDetachControllerOptions holds the AttachDetachController options. @@ -40,7 +40,7 @@ func (o *AttachDetachControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up AttachDetachController config with options. -func (o *AttachDetachControllerOptions) ApplyTo(cfg *componentconfig.AttachDetachControllerConfiguration) error { +func (o *AttachDetachControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.AttachDetachControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/csrsigningcontroller.go b/cmd/kube-controller-manager/app/options/csrsigningcontroller.go index acd9d9be28c..3ddb7cd6454 100644 --- a/cmd/kube-controller-manager/app/options/csrsigningcontroller.go +++ b/cmd/kube-controller-manager/app/options/csrsigningcontroller.go @@ -20,7 +20,7 @@ import ( "github.com/spf13/pflag" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) const ( @@ -52,7 +52,7 @@ func (o *CSRSigningControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up CSRSigningController config with options. -func (o *CSRSigningControllerOptions) ApplyTo(cfg *componentconfig.CSRSigningControllerConfiguration) error { +func (o *CSRSigningControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.CSRSigningControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/daemonsetcontroller.go b/cmd/kube-controller-manager/app/options/daemonsetcontroller.go index 2d3d3f526ab..c0e3ec0492b 100644 --- a/cmd/kube-controller-manager/app/options/daemonsetcontroller.go +++ b/cmd/kube-controller-manager/app/options/daemonsetcontroller.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // DaemonSetControllerOptions holds the DaemonSetController options. @@ -35,7 +35,7 @@ func (o *DaemonSetControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up DaemonSetController config with options. -func (o *DaemonSetControllerOptions) ApplyTo(cfg *componentconfig.DaemonSetControllerConfiguration) error { +func (o *DaemonSetControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.DaemonSetControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/deploymentcontroller.go b/cmd/kube-controller-manager/app/options/deploymentcontroller.go index 481ffad4486..b497a3e7565 100644 --- a/cmd/kube-controller-manager/app/options/deploymentcontroller.go +++ b/cmd/kube-controller-manager/app/options/deploymentcontroller.go @@ -20,7 +20,7 @@ import ( "github.com/spf13/pflag" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // DeploymentControllerOptions holds the DeploymentController options. @@ -40,7 +40,7 @@ func (o *DeploymentControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up DeploymentController config with options. -func (o *DeploymentControllerOptions) ApplyTo(cfg *componentconfig.DeploymentControllerConfiguration) error { +func (o *DeploymentControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.DeploymentControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/deprecatedcontroller.go b/cmd/kube-controller-manager/app/options/deprecatedcontroller.go index b65683725ae..904abac06cd 100644 --- a/cmd/kube-controller-manager/app/options/deprecatedcontroller.go +++ b/cmd/kube-controller-manager/app/options/deprecatedcontroller.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // DeprecatedControllerOptions holds the DeprecatedController options, those option are deprecated. @@ -46,12 +46,12 @@ func (o *DeprecatedControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up DeprecatedController config with options. -func (o *DeprecatedControllerOptions) ApplyTo(cfg *componentconfig.DeprecatedControllerConfiguration) error { +func (o *DeprecatedControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.DeprecatedControllerConfiguration) error { if o == nil { return nil } - cfg.DeletingPodsQps = o.DeletingPodsQPS + cfg.DeletingPodsQPS = o.DeletingPodsQPS cfg.DeletingPodsBurst = o.DeletingPodsBurst cfg.RegisterRetryCount = o.RegisterRetryCount diff --git a/cmd/kube-controller-manager/app/options/endpointcontroller.go b/cmd/kube-controller-manager/app/options/endpointcontroller.go index 7db7b0e3116..c3b224cecb7 100644 --- a/cmd/kube-controller-manager/app/options/endpointcontroller.go +++ b/cmd/kube-controller-manager/app/options/endpointcontroller.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // EndpointControllerOptions holds the EndPointController options. @@ -37,7 +37,7 @@ func (o *EndpointControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up EndPointController config with options. -func (o *EndpointControllerOptions) ApplyTo(cfg *componentconfig.EndpointControllerConfiguration) error { +func (o *EndpointControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.EndpointControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/garbagecollectorcontroller.go b/cmd/kube-controller-manager/app/options/garbagecollectorcontroller.go index 73d4e5fcd58..07b63f6f573 100644 --- a/cmd/kube-controller-manager/app/options/garbagecollectorcontroller.go +++ b/cmd/kube-controller-manager/app/options/garbagecollectorcontroller.go @@ -19,13 +19,13 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // GarbageCollectorControllerOptions holds the GarbageCollectorController options. type GarbageCollectorControllerOptions struct { ConcurrentGCSyncs int32 - GCIgnoredResources []componentconfig.GroupResource + GCIgnoredResources []kubectrlmgrconfig.GroupResource EnableGarbageCollector bool } @@ -40,7 +40,7 @@ func (o *GarbageCollectorControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up GarbageCollectorController config with options. -func (o *GarbageCollectorControllerOptions) ApplyTo(cfg *componentconfig.GarbageCollectorControllerConfiguration) error { +func (o *GarbageCollectorControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.GarbageCollectorControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/hpacontroller.go b/cmd/kube-controller-manager/app/options/hpacontroller.go index 40ee7f4df8f..de39131a1fa 100644 --- a/cmd/kube-controller-manager/app/options/hpacontroller.go +++ b/cmd/kube-controller-manager/app/options/hpacontroller.go @@ -20,7 +20,7 @@ import ( "github.com/spf13/pflag" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // HPAControllerOptions holds the HPAController options. @@ -54,7 +54,7 @@ func (o *HPAControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up HPAController config with options. -func (o *HPAControllerOptions) ApplyTo(cfg *componentconfig.HPAControllerConfiguration) error { +func (o *HPAControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.HPAControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/jobcontroller.go b/cmd/kube-controller-manager/app/options/jobcontroller.go index 97dc0277289..d9d715c2ba9 100644 --- a/cmd/kube-controller-manager/app/options/jobcontroller.go +++ b/cmd/kube-controller-manager/app/options/jobcontroller.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // JobControllerOptions holds the JobController options. @@ -35,7 +35,7 @@ func (o *JobControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up JobController config with options. -func (o *JobControllerOptions) ApplyTo(cfg *componentconfig.JobControllerConfiguration) error { +func (o *JobControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.JobControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/namespacecontroller.go b/cmd/kube-controller-manager/app/options/namespacecontroller.go index b6cd5e63abb..90a771b781b 100644 --- a/cmd/kube-controller-manager/app/options/namespacecontroller.go +++ b/cmd/kube-controller-manager/app/options/namespacecontroller.go @@ -20,7 +20,7 @@ import ( "github.com/spf13/pflag" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // NamespaceControllerOptions holds the NamespaceController options. @@ -40,7 +40,7 @@ func (o *NamespaceControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up NamespaceController config with options. -func (o *NamespaceControllerOptions) ApplyTo(cfg *componentconfig.NamespaceControllerConfiguration) error { +func (o *NamespaceControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.NamespaceControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/nodeipamcontroller.go b/cmd/kube-controller-manager/app/options/nodeipamcontroller.go index 0f36188a279..6e2ecb96afb 100644 --- a/cmd/kube-controller-manager/app/options/nodeipamcontroller.go +++ b/cmd/kube-controller-manager/app/options/nodeipamcontroller.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // NodeIPAMControllerOptions holds the NodeIpamController options. @@ -39,7 +39,7 @@ func (o *NodeIPAMControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up NodeIpamController config with options. -func (o *NodeIPAMControllerOptions) ApplyTo(cfg *componentconfig.NodeIPAMControllerConfiguration) error { +func (o *NodeIPAMControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.NodeIPAMControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/nodelifecyclecontroller.go b/cmd/kube-controller-manager/app/options/nodelifecyclecontroller.go index 6c3ddeb09b4..956543fe04f 100644 --- a/cmd/kube-controller-manager/app/options/nodelifecyclecontroller.go +++ b/cmd/kube-controller-manager/app/options/nodelifecyclecontroller.go @@ -20,7 +20,7 @@ import ( "github.com/spf13/pflag" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // NodeLifecycleControllerOptions holds the NodeLifecycleController options. @@ -56,7 +56,7 @@ func (o *NodeLifecycleControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up NodeLifecycleController config with options. -func (o *NodeLifecycleControllerOptions) ApplyTo(cfg *componentconfig.NodeLifecycleControllerConfiguration) error { +func (o *NodeLifecycleControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.NodeLifecycleControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/options.go b/cmd/kube-controller-manager/app/options/options.go index 6ffeeff71ce..56178e9ed5a 100644 --- a/cmd/kube-controller-manager/app/options/options.go +++ b/cmd/kube-controller-manager/app/options/options.go @@ -33,11 +33,12 @@ import ( restclient "k8s.io/client-go/rest" "k8s.io/client-go/tools/clientcmd" "k8s.io/client-go/tools/record" + kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1" cmoptions "k8s.io/kubernetes/cmd/controller-manager/app/options" kubecontrollerconfig "k8s.io/kubernetes/cmd/kube-controller-manager/app/config" "k8s.io/kubernetes/pkg/api/legacyscheme" - "k8s.io/kubernetes/pkg/apis/componentconfig" - componentconfigv1alpha1 "k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" + kubectrlmgrschemev1alpha1 "k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1" "k8s.io/kubernetes/pkg/controller/garbagecollector" "k8s.io/kubernetes/pkg/master/ports" @@ -189,9 +190,9 @@ func NewKubeControllerManagerOptions() (*KubeControllerManagerOptions, error) { s.SecureServing.ServerCert.PairName = "kube-controller-manager" s.SecureServing.BindPort = ports.KubeControllerManagerPort - gcIgnoredResources := make([]componentconfig.GroupResource, 0, len(garbagecollector.DefaultIgnoredResources())) + gcIgnoredResources := make([]kubectrlmgrconfig.GroupResource, 0, len(garbagecollector.DefaultIgnoredResources())) for r := range garbagecollector.DefaultIgnoredResources() { - gcIgnoredResources = append(gcIgnoredResources, componentconfig.GroupResource{Group: r.Group, Resource: r.Resource}) + gcIgnoredResources = append(gcIgnoredResources, kubectrlmgrconfig.GroupResource{Group: r.Group, Resource: r.Resource}) } s.GarbageCollectorController.GCIgnoredResources = gcIgnoredResources @@ -200,19 +201,19 @@ func NewKubeControllerManagerOptions() (*KubeControllerManagerOptions, error) { } // NewDefaultComponentConfig returns kube-controller manager configuration object. -func NewDefaultComponentConfig(insecurePort int32) (componentconfig.KubeControllerManagerConfiguration, error) { +func NewDefaultComponentConfig(insecurePort int32) (kubectrlmgrconfig.KubeControllerManagerConfiguration, error) { scheme := runtime.NewScheme() - if err := componentconfigv1alpha1.AddToScheme(scheme); err != nil { - return componentconfig.KubeControllerManagerConfiguration{}, err + if err := kubectrlmgrschemev1alpha1.AddToScheme(scheme); err != nil { + return kubectrlmgrconfig.KubeControllerManagerConfiguration{}, err } - if err := componentconfig.AddToScheme(scheme); err != nil { - return componentconfig.KubeControllerManagerConfiguration{}, err + if err := kubectrlmgrconfig.AddToScheme(scheme); err != nil { + return kubectrlmgrconfig.KubeControllerManagerConfiguration{}, err } - versioned := componentconfigv1alpha1.KubeControllerManagerConfiguration{} + versioned := kubectrlmgrconfigv1alpha1.KubeControllerManagerConfiguration{} scheme.Default(&versioned) - internal := componentconfig.KubeControllerManagerConfiguration{} + internal := kubectrlmgrconfig.KubeControllerManagerConfiguration{} if err := scheme.Convert(&versioned, &internal, nil); err != nil { return internal, err } diff --git a/cmd/kube-controller-manager/app/options/options_test.go b/cmd/kube-controller-manager/app/options/options_test.go index c7d47ddaa98..5a59471ac44 100644 --- a/cmd/kube-controller-manager/app/options/options_test.go +++ b/cmd/kube-controller-manager/app/options/options_test.go @@ -31,7 +31,7 @@ import ( apiserverconfig "k8s.io/apiserver/pkg/apis/config" apiserveroptions "k8s.io/apiserver/pkg/server/options" cmoptions "k8s.io/kubernetes/cmd/controller-manager/app/options" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) func TestAddFlags(t *testing.T) { @@ -185,7 +185,7 @@ func TestAddFlags(t *testing.T) { }, GarbageCollectorController: &GarbageCollectorControllerOptions{ ConcurrentGCSyncs: 30, - GCIgnoredResources: []componentconfig.GroupResource{ + GCIgnoredResources: []kubectrlmgrconfig.GroupResource{ {Group: "", Resource: "events"}, }, EnableGarbageCollector: false, @@ -222,11 +222,11 @@ func TestAddFlags(t *testing.T) { }, PersistentVolumeBinderController: &PersistentVolumeBinderControllerOptions{ PVClaimBinderSyncPeriod: metav1.Duration{Duration: 30 * time.Second}, - VolumeConfiguration: componentconfig.VolumeConfiguration{ + VolumeConfiguration: kubectrlmgrconfig.VolumeConfiguration{ EnableDynamicProvisioning: false, EnableHostPathProvisioning: true, FlexVolumePluginDir: "/flex-volume-plugin", - PersistentVolumeRecyclerConfiguration: componentconfig.PersistentVolumeRecyclerConfiguration{ + PersistentVolumeRecyclerConfiguration: kubectrlmgrconfig.PersistentVolumeRecyclerConfiguration{ MaximumRetry: 3, MinimumTimeoutNFS: 200, IncrementTimeoutNFS: 45, @@ -298,7 +298,7 @@ func TestAddFlags(t *testing.T) { } } -type sortedGCIgnoredResources []componentconfig.GroupResource +type sortedGCIgnoredResources []kubectrlmgrconfig.GroupResource func (r sortedGCIgnoredResources) Len() int { return len(r) diff --git a/cmd/kube-controller-manager/app/options/persistentvolumebindercontroller.go b/cmd/kube-controller-manager/app/options/persistentvolumebindercontroller.go index ba7e05ccc0b..93ba171b078 100644 --- a/cmd/kube-controller-manager/app/options/persistentvolumebindercontroller.go +++ b/cmd/kube-controller-manager/app/options/persistentvolumebindercontroller.go @@ -20,13 +20,13 @@ import ( "github.com/spf13/pflag" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // PersistentVolumeBinderControllerOptions holds the PersistentVolumeBinderController options. type PersistentVolumeBinderControllerOptions struct { PVClaimBinderSyncPeriod metav1.Duration - VolumeConfiguration componentconfig.VolumeConfiguration + VolumeConfiguration kubectrlmgrconfig.VolumeConfiguration } // AddFlags adds flags related to PersistentVolumeBinderController for controller manager to the specified FlagSet. @@ -48,7 +48,7 @@ func (o *PersistentVolumeBinderControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up PersistentVolumeBinderController config with options. -func (o *PersistentVolumeBinderControllerOptions) ApplyTo(cfg *componentconfig.PersistentVolumeBinderControllerConfiguration) error { +func (o *PersistentVolumeBinderControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.PersistentVolumeBinderControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/podgccontroller.go b/cmd/kube-controller-manager/app/options/podgccontroller.go index 9af9c4429ae..0d9928aee1b 100644 --- a/cmd/kube-controller-manager/app/options/podgccontroller.go +++ b/cmd/kube-controller-manager/app/options/podgccontroller.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // PodGCControllerOptions holds the PodGCController options. @@ -37,7 +37,7 @@ func (o *PodGCControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up PodGCController config with options. -func (o *PodGCControllerOptions) ApplyTo(cfg *componentconfig.PodGCControllerConfiguration) error { +func (o *PodGCControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.PodGCControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/replicasetcontroller.go b/cmd/kube-controller-manager/app/options/replicasetcontroller.go index 67a6acdd007..2a3e206fd15 100644 --- a/cmd/kube-controller-manager/app/options/replicasetcontroller.go +++ b/cmd/kube-controller-manager/app/options/replicasetcontroller.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // ReplicaSetControllerOptions holds the ReplicaSetController options. @@ -37,7 +37,7 @@ func (o *ReplicaSetControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up ReplicaSetController config with options. -func (o *ReplicaSetControllerOptions) ApplyTo(cfg *componentconfig.ReplicaSetControllerConfiguration) error { +func (o *ReplicaSetControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.ReplicaSetControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/replicationcontroller.go b/cmd/kube-controller-manager/app/options/replicationcontroller.go index 0b79bf3340f..3e24dc5aae7 100644 --- a/cmd/kube-controller-manager/app/options/replicationcontroller.go +++ b/cmd/kube-controller-manager/app/options/replicationcontroller.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // ReplicationControllerOptions holds the ReplicationController options. @@ -37,7 +37,7 @@ func (o *ReplicationControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up ReplicationController config with options. -func (o *ReplicationControllerOptions) ApplyTo(cfg *componentconfig.ReplicationControllerConfiguration) error { +func (o *ReplicationControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.ReplicationControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/resourcequotacontroller.go b/cmd/kube-controller-manager/app/options/resourcequotacontroller.go index 1d89320e5a1..5bb1f07a52c 100644 --- a/cmd/kube-controller-manager/app/options/resourcequotacontroller.go +++ b/cmd/kube-controller-manager/app/options/resourcequotacontroller.go @@ -20,7 +20,7 @@ import ( "github.com/spf13/pflag" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // ResourceQuotaControllerOptions holds the ResourceQuotaController options. @@ -40,7 +40,7 @@ func (o *ResourceQuotaControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up ResourceQuotaController config with options. -func (o *ResourceQuotaControllerOptions) ApplyTo(cfg *componentconfig.ResourceQuotaControllerConfiguration) error { +func (o *ResourceQuotaControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.ResourceQuotaControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/options/serviceaccountcontroller.go b/cmd/kube-controller-manager/app/options/serviceaccountcontroller.go index e29099199e0..88a40b46bd2 100644 --- a/cmd/kube-controller-manager/app/options/serviceaccountcontroller.go +++ b/cmd/kube-controller-manager/app/options/serviceaccountcontroller.go @@ -19,7 +19,7 @@ package options import ( "github.com/spf13/pflag" - "k8s.io/kubernetes/pkg/apis/componentconfig" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" ) // SAControllerOptions holds the ServiceAccountController options. @@ -41,7 +41,7 @@ func (o *SAControllerOptions) AddFlags(fs *pflag.FlagSet) { } // ApplyTo fills up ServiceAccountController config with options. -func (o *SAControllerOptions) ApplyTo(cfg *componentconfig.SAControllerConfiguration) error { +func (o *SAControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.SAControllerConfiguration) error { if o == nil { return nil } diff --git a/cmd/kube-controller-manager/app/plugins.go b/cmd/kube-controller-manager/app/plugins.go index 5b0fe113e6a..ba9bb40de90 100644 --- a/cmd/kube-controller-manager/app/plugins.go +++ b/cmd/kube-controller-manager/app/plugins.go @@ -23,14 +23,12 @@ import ( "fmt" - // Cloud providers - "k8s.io/kubernetes/pkg/apis/componentconfig" - _ "k8s.io/kubernetes/pkg/cloudprovider/providers" - "k8s.io/utils/exec" - - // Volume plugins "github.com/golang/glog" + + // Cloud providers "k8s.io/kubernetes/pkg/cloudprovider" + _ "k8s.io/kubernetes/pkg/cloudprovider/providers" + // Volume plugins "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/aws_ebs" "k8s.io/kubernetes/pkg/volume/azure_dd" @@ -56,7 +54,9 @@ import ( "k8s.io/kubernetes/pkg/volume/vsphere_volume" utilfeature "k8s.io/apiserver/pkg/util/feature" + kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config" "k8s.io/kubernetes/pkg/features" + "k8s.io/utils/exec" ) // ProbeAttachableVolumePlugins collects all volume plugins for the attach/ @@ -87,12 +87,12 @@ func ProbeAttachableVolumePlugins() []volume.VolumePlugin { // GetDynamicPluginProber gets the probers of dynamically discoverable plugins // for the attach/detach controller. // Currently only Flexvolume plugins are dynamically discoverable. -func GetDynamicPluginProber(config componentconfig.VolumeConfiguration) volume.DynamicPluginProber { +func GetDynamicPluginProber(config kubectrlmgrconfig.VolumeConfiguration) volume.DynamicPluginProber { return flexvolume.GetDynamicPluginProber(config.FlexVolumePluginDir, exec.New() /*exec.Interface*/) } // ProbeExpandableVolumePlugins returns volume plugins which are expandable -func ProbeExpandableVolumePlugins(config componentconfig.VolumeConfiguration) []volume.VolumePlugin { +func ProbeExpandableVolumePlugins(config kubectrlmgrconfig.VolumeConfiguration) []volume.VolumePlugin { allPlugins := []volume.VolumePlugin{} allPlugins = append(allPlugins, aws_ebs.ProbeVolumePlugins()...) @@ -114,7 +114,7 @@ func ProbeExpandableVolumePlugins(config componentconfig.VolumeConfiguration) [] // ProbeControllerVolumePlugins collects all persistent volume plugins into an // easy to use list. Only volume plugins that implement any of // provisioner/recycler/deleter interface should be returned. -func ProbeControllerVolumePlugins(cloud cloudprovider.Interface, config componentconfig.VolumeConfiguration) []volume.VolumePlugin { +func ProbeControllerVolumePlugins(cloud cloudprovider.Interface, config kubectrlmgrconfig.VolumeConfiguration) []volume.VolumePlugin { allPlugins := []volume.VolumePlugin{} // The list of plugins to probe is decided by this binary, not From 5fbfed4d430202f39aa79b029612f1d49594d366 Mon Sep 17 00:00:00 2001 From: stewart-yu Date: Mon, 3 Sep 2018 22:43:58 +0800 Subject: [PATCH 5/8] [kube-controller-manager] fix violation and golint failure --- api/api-rules/violation_exceptions.list | 206 ++++++++++++------------ hack/.golint_failures | 1 + 2 files changed, 104 insertions(+), 103 deletions(-) diff --git a/api/api-rules/violation_exceptions.list b/api/api-rules/violation_exceptions.list index 03f502184d3..df8bfded969 100644 --- a/api/api-rules/violation_exceptions.list +++ b/api/api-rules/violation_exceptions.list @@ -57,115 +57,115 @@ API rule violation: names_match,k8s.io/apimachinery/pkg/runtime,Unknown,ContentT API rule violation: names_match,k8s.io/apimachinery/pkg/util/intstr,IntOrString,Type API rule violation: names_match,k8s.io/apimachinery/pkg/util/intstr,IntOrString,IntVal API rule violation: names_match,k8s.io/apimachinery/pkg/util/intstr,IntOrString,StrVal +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,AttachDetachControllerConfiguration,DisableAttachDetachReconcilerSync +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,AttachDetachControllerConfiguration,ReconcilerSyncLoopPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,CSRSigningControllerConfiguration,ClusterSigningCertFile +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,CSRSigningControllerConfiguration,ClusterSigningKeyFile +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,CSRSigningControllerConfiguration,ClusterSigningDuration +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,CloudProviderConfiguration,Name +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,CloudProviderConfiguration,CloudConfigFile +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,DaemonSetControllerConfiguration,ConcurrentDaemonSetSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,DeploymentControllerConfiguration,ConcurrentDeploymentSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,DeploymentControllerConfiguration,DeploymentControllerSyncPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,DeprecatedControllerConfiguration,DeletingPodsQPS +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,DeprecatedControllerConfiguration,DeletingPodsBurst +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,DeprecatedControllerConfiguration,RegisterRetryCount +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,EndpointControllerConfiguration,ConcurrentEndpointSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GarbageCollectorControllerConfiguration,EnableGarbageCollector +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GarbageCollectorControllerConfiguration,ConcurrentGCSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GarbageCollectorControllerConfiguration,GCIgnoredResources +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GenericControllerManagerConfiguration,Port +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GenericControllerManagerConfiguration,Address +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GenericControllerManagerConfiguration,MinResyncPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GenericControllerManagerConfiguration,ClientConnection +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GenericControllerManagerConfiguration,ControllerStartInterval +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GenericControllerManagerConfiguration,LeaderElection +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GenericControllerManagerConfiguration,Controllers +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GenericControllerManagerConfiguration,Debugging +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GroupResource,Group +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,GroupResource,Resource +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerSyncPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerUpscaleForbiddenWindow +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerDownscaleStabilizationWindow +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerDownscaleForbiddenWindow +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerTolerance +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerUseRESTClients +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerCPUInitializationPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerInitialReadinessDelay +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,JobControllerConfiguration,ConcurrentJobSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,CloudProvider +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,ExternalCloudVolumePlugin +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,UseServiceAccountCredentials +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,AllowUntaggedCloud +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,RouteReconciliationPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,NodeMonitorPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,ClusterName +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,ClusterCIDR +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,AllocateNodeCIDRs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,CIDRAllocatorType +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,ConfigureCloudRoutes +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeCloudSharedConfiguration,NodeSyncPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,Generic +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,KubeCloudShared +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,AttachDetachController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,CSRSigningController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,DaemonSetController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,DeploymentController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,DeprecatedController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,EndpointController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,GarbageCollectorController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,HPAController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,JobController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,NamespaceController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,NodeIPAMController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,NodeLifecycleController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,PersistentVolumeBinderController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,PodGCController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,ReplicaSetController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,ReplicationController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,ResourceQuotaController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,SAController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,ServiceController +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NamespaceControllerConfiguration,NamespaceSyncPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NamespaceControllerConfiguration,ConcurrentNamespaceSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NodeIPAMControllerConfiguration,ServiceCIDR +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NodeIPAMControllerConfiguration,NodeCIDRMaskSize +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NodeLifecycleControllerConfiguration,EnableTaintManager +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NodeLifecycleControllerConfiguration,NodeEvictionRate +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NodeLifecycleControllerConfiguration,SecondaryNodeEvictionRate +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NodeLifecycleControllerConfiguration,NodeStartupGracePeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NodeLifecycleControllerConfiguration,NodeMonitorGracePeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NodeLifecycleControllerConfiguration,PodEvictionTimeout +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NodeLifecycleControllerConfiguration,LargeClusterSizeThreshold +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NodeLifecycleControllerConfiguration,UnhealthyZoneThreshold +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,PersistentVolumeBinderControllerConfiguration,PVClaimBinderSyncPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,PersistentVolumeBinderControllerConfiguration,VolumeConfiguration +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,PersistentVolumeRecyclerConfiguration,MaximumRetry +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,PersistentVolumeRecyclerConfiguration,MinimumTimeoutNFS +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,PersistentVolumeRecyclerConfiguration,PodTemplateFilePathNFS +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,PersistentVolumeRecyclerConfiguration,IncrementTimeoutNFS +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,PersistentVolumeRecyclerConfiguration,PodTemplateFilePathHostPath +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,PersistentVolumeRecyclerConfiguration,MinimumTimeoutHostPath +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,PersistentVolumeRecyclerConfiguration,IncrementTimeoutHostPath +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,PodGCControllerConfiguration,TerminatedPodGCThreshold +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,ReplicaSetControllerConfiguration,ConcurrentRSSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,ReplicationControllerConfiguration,ConcurrentRCSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,ResourceQuotaControllerConfiguration,ResourceQuotaSyncPeriod +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,ResourceQuotaControllerConfiguration,ConcurrentResourceQuotaSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,SAControllerConfiguration,ServiceAccountKeyFile +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,SAControllerConfiguration,ConcurrentSATokenSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,SAControllerConfiguration,RootCAFile +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,ServiceControllerConfiguration,ConcurrentServiceSyncs +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,VolumeConfiguration,EnableHostPathProvisioning +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,VolumeConfiguration,EnableDynamicProvisioning +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,VolumeConfiguration,PersistentVolumeRecyclerConfiguration +API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,VolumeConfiguration,FlexVolumePluginDir API rule violation: names_match,k8s.io/kubelet/config/v1beta1,KubeletConfiguration,ResolverConfig API rule violation: names_match,k8s.io/kubelet/config/v1beta1,KubeletConfiguration,IPTablesMasqueradeBit API rule violation: names_match,k8s.io/kubelet/config/v1beta1,KubeletConfiguration,IPTablesDropBit -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,AttachDetachControllerConfiguration,DisableAttachDetachReconcilerSync -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,AttachDetachControllerConfiguration,ReconcilerSyncLoopPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CSRSigningControllerConfiguration,ClusterSigningCertFile -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CSRSigningControllerConfiguration,ClusterSigningKeyFile -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CSRSigningControllerConfiguration,ClusterSigningDuration API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,Generic API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,KubeCloudShared API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,ServiceController API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,NodeStatusUpdateFrequency -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudProviderConfiguration,Name -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudProviderConfiguration,CloudConfigFile -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DaemonSetControllerConfiguration,ConcurrentDaemonSetSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DeploymentControllerConfiguration,ConcurrentDeploymentSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DeploymentControllerConfiguration,DeploymentControllerSyncPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DeprecatedControllerConfiguration,DeletingPodsQps -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DeprecatedControllerConfiguration,DeletingPodsBurst -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DeprecatedControllerConfiguration,RegisterRetryCount -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,EndpointControllerConfiguration,ConcurrentEndpointSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GarbageCollectorControllerConfiguration,EnableGarbageCollector -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GarbageCollectorControllerConfiguration,ConcurrentGCSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GarbageCollectorControllerConfiguration,GCIgnoredResources -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericControllerManagerConfiguration,Port -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericControllerManagerConfiguration,Address -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericControllerManagerConfiguration,MinResyncPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericControllerManagerConfiguration,ClientConnection -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericControllerManagerConfiguration,ControllerStartInterval -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericControllerManagerConfiguration,LeaderElection -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericControllerManagerConfiguration,Controllers -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericControllerManagerConfiguration,Debugging -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GroupResource,Group -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GroupResource,Resource -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerSyncPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerUpscaleForbiddenWindow -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerDownscaleStabilizationWindow -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerDownscaleForbiddenWindow -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerTolerance -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerUseRESTClients -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerCPUInitializationPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerInitialReadinessDelay -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,JobControllerConfiguration,ConcurrentJobSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,CloudProvider -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,ExternalCloudVolumePlugin -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,UseServiceAccountCredentials -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,AllowUntaggedCloud -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,RouteReconciliationPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,NodeMonitorPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,ClusterName -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,ClusterCIDR -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,AllocateNodeCIDRs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,CIDRAllocatorType -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,ConfigureCloudRoutes -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,NodeSyncPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,Generic -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,KubeCloudShared -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,AttachDetachController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,CSRSigningController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,DaemonSetController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,DeploymentController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,DeprecatedController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,EndpointController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,GarbageCollectorController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,HPAController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,JobController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,NamespaceController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,NodeIPAMController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,NodeLifecycleController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,PersistentVolumeBinderController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,PodGCController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,ReplicaSetController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,ReplicationController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,ResourceQuotaController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,SAController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,ServiceController -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NamespaceControllerConfiguration,NamespaceSyncPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NamespaceControllerConfiguration,ConcurrentNamespaceSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeIPAMControllerConfiguration,ServiceCIDR -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeIPAMControllerConfiguration,NodeCIDRMaskSize -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,EnableTaintManager -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,NodeEvictionRate -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,SecondaryNodeEvictionRate -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,NodeStartupGracePeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,NodeMonitorGracePeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,PodEvictionTimeout -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,LargeClusterSizeThreshold -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,UnhealthyZoneThreshold -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeBinderControllerConfiguration,PVClaimBinderSyncPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeBinderControllerConfiguration,VolumeConfiguration -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,MaximumRetry -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,MinimumTimeoutNFS -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,PodTemplateFilePathNFS -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,IncrementTimeoutNFS -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,PodTemplateFilePathHostPath -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,MinimumTimeoutHostPath -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,IncrementTimeoutHostPath -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PodGCControllerConfiguration,TerminatedPodGCThreshold -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,ReplicaSetControllerConfiguration,ConcurrentRSSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,ReplicationControllerConfiguration,ConcurrentRCSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,ResourceQuotaControllerConfiguration,ResourceQuotaSyncPeriod -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,ResourceQuotaControllerConfiguration,ConcurrentResourceQuotaSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,SAControllerConfiguration,ServiceAccountKeyFile -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,SAControllerConfiguration,ConcurrentSATokenSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,SAControllerConfiguration,RootCAFile -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,ServiceControllerConfiguration,ConcurrentServiceSyncs -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,VolumeConfiguration,EnableHostPathProvisioning -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,VolumeConfiguration,EnableDynamicProvisioning -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,VolumeConfiguration,PersistentVolumeRecyclerConfiguration -API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,VolumeConfiguration,FlexVolumePluginDir API rule violation: names_match,k8s.io/metrics/pkg/apis/custom_metrics/v1beta1,MetricValue,WindowSeconds API rule violation: names_match,k8s.io/metrics/pkg/apis/external_metrics/v1beta1,ExternalMetricValue,WindowSeconds diff --git a/hack/.golint_failures b/hack/.golint_failures index a6bd6789a96..2dd3883d24f 100644 --- a/hack/.golint_failures +++ b/hack/.golint_failures @@ -111,6 +111,7 @@ pkg/cloudprovider/providers/photon pkg/cloudprovider/providers/vsphere pkg/cloudprovider/providers/vsphere/vclib pkg/controller +pkg/controller/apis/config/v1alpha1 pkg/controller/bootstrap pkg/controller/certificates pkg/controller/certificates/approver From 3f50614ff7b91a4d1263fd332b26df83f8578eee Mon Sep 17 00:00:00 2001 From: stewart-yu Date: Thu, 16 Aug 2018 10:17:45 +0800 Subject: [PATCH 6/8] [kube-controller-manager] auto-generated file about run godeps --- .../Godeps/Godeps.json | 166 ++++++++++++++++++ .../kube-controller-manager/Godeps/OWNERS | 2 + .../kube-controller-manager/Godeps/Readme | 5 + vendor/k8s.io/kube-controller-manager | 1 + 4 files changed, 174 insertions(+) create mode 100644 staging/src/k8s.io/kube-controller-manager/Godeps/Godeps.json create mode 100644 staging/src/k8s.io/kube-controller-manager/Godeps/OWNERS create mode 100644 staging/src/k8s.io/kube-controller-manager/Godeps/Readme create mode 120000 vendor/k8s.io/kube-controller-manager diff --git a/staging/src/k8s.io/kube-controller-manager/Godeps/Godeps.json b/staging/src/k8s.io/kube-controller-manager/Godeps/Godeps.json new file mode 100644 index 00000000000..3085911b9d7 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/Godeps/Godeps.json @@ -0,0 +1,166 @@ +{ + "ImportPath": "k8s.io/kube-controller-manager", + "GoVersion": "go1.10", + "GodepVersion": "v80", + "Packages": [ + "./..." + ], + "Deps": [ + { + "ImportPath": "github.com/gogo/protobuf/proto", + "Rev": "c0656edd0d9eab7c66d1eb0c568f9039345796f7" + }, + { + "ImportPath": "github.com/gogo/protobuf/sortkeys", + "Rev": "c0656edd0d9eab7c66d1eb0c568f9039345796f7" + }, + { + "ImportPath": "github.com/golang/glog", + "Rev": "44145f04b68cf362d9c4df2182967c2275eaefed" + }, + { + "ImportPath": "github.com/google/gofuzz", + "Rev": "44d81051d367757e1c7c6a5a86423ece9afcf63c" + }, + { + "ImportPath": "golang.org/x/net/http2", + "Rev": "1c05540f6879653db88113bc4a2b70aec4bd491f" + }, + { + "ImportPath": "golang.org/x/net/http2/hpack", + "Rev": "1c05540f6879653db88113bc4a2b70aec4bd491f" + }, + { + "ImportPath": "golang.org/x/net/idna", + "Rev": "1c05540f6879653db88113bc4a2b70aec4bd491f" + }, + { + "ImportPath": "golang.org/x/net/lex/httplex", + "Rev": "1c05540f6879653db88113bc4a2b70aec4bd491f" + }, + { + "ImportPath": "golang.org/x/text/secure/bidirule", + "Rev": "b19bf474d317b857955b12035d2c5acb57ce8b01" + }, + { + "ImportPath": "golang.org/x/text/transform", + "Rev": "b19bf474d317b857955b12035d2c5acb57ce8b01" + }, + { + "ImportPath": "golang.org/x/text/unicode/bidi", + "Rev": "b19bf474d317b857955b12035d2c5acb57ce8b01" + }, + { + "ImportPath": "golang.org/x/text/unicode/norm", + "Rev": "b19bf474d317b857955b12035d2c5acb57ce8b01" + }, + { + "ImportPath": "gopkg.in/inf.v0", + "Rev": "3887ee99ecf07df5b447e9b00d9c0b2adaa9f3e4" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/api/resource", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/apis/config", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/apis/config/v1alpha1", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/conversion", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/conversion/queryparams", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/fields", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/labels", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/runtime", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/runtime/schema", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/selection", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/types", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/util/errors", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/util/intstr", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/util/json", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/util/naming", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/util/net", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/util/runtime", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/util/sets", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/util/validation", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/util/validation/field", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/pkg/watch", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apimachinery/third_party/forked/golang/reflect", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apiserver/pkg/apis/config", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/apiserver/pkg/apis/config/v1alpha1", + "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + }, + { + "ImportPath": "k8s.io/utils/pointer", + "Rev": "66066c83e385e385ccc3c964b44fd7dcd413d0ed" + } + ] +} diff --git a/staging/src/k8s.io/kube-controller-manager/Godeps/OWNERS b/staging/src/k8s.io/kube-controller-manager/Godeps/OWNERS new file mode 100644 index 00000000000..3d49f30605a --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/Godeps/OWNERS @@ -0,0 +1,2 @@ +approvers: +- dep-approvers diff --git a/staging/src/k8s.io/kube-controller-manager/Godeps/Readme b/staging/src/k8s.io/kube-controller-manager/Godeps/Readme new file mode 100644 index 00000000000..4cdaa53d56d --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/Godeps/Readme @@ -0,0 +1,5 @@ +This directory tree is generated automatically by godep. + +Please do not edit. + +See https://github.com/tools/godep for more information. diff --git a/vendor/k8s.io/kube-controller-manager b/vendor/k8s.io/kube-controller-manager new file mode 120000 index 00000000000..ac68de06e18 --- /dev/null +++ b/vendor/k8s.io/kube-controller-manager @@ -0,0 +1 @@ +../../staging/src/k8s.io/kube-controller-manager \ No newline at end of file From cef2ab756cc69415ef4af741da1b669c9a612ad2 Mon Sep 17 00:00:00 2001 From: stewart-yu Date: Tue, 4 Sep 2018 13:39:13 +0800 Subject: [PATCH 7/8] [kube-controller-manager] auto-generated file --- cmd/controller-manager/app/options/BUILD | 2 +- cmd/kube-controller-manager/app/BUILD | 2 +- cmd/kube-controller-manager/app/config/BUILD | 2 +- cmd/kube-controller-manager/app/options/BUILD | 7 +- pkg/apis/componentconfig/BUILD | 3 +- pkg/apis/componentconfig/v1alpha1/BUILD | 5 +- .../v1alpha1/zz_generated.conversion.go | 1084 +--------------- .../v1alpha1/zz_generated.deepcopy.go | 512 -------- .../v1alpha1/zz_generated.defaults.go | 16 +- .../componentconfig/zz_generated.deepcopy.go | 482 ------- pkg/controller/BUILD | 1 + pkg/controller/apis/config/BUILD | 38 + pkg/controller/apis/config/scheme/BUILD | 29 + pkg/controller/apis/config/v1alpha1/BUILD | 52 + .../v1alpha1/zz_generated.conversion.go | 1109 +++++++++++++++++ .../config/v1alpha1/zz_generated.defaults.go | 57 + .../apis/config/zz_generated.deepcopy.go | 507 ++++++++ pkg/generated/openapi/BUILD | 1 + staging/src/BUILD | 1 + .../config/v1alpha1/BUILD | 35 + .../config/v1alpha1/zz_generated.deepcopy.go | 537 ++++++++ 21 files changed, 2387 insertions(+), 2095 deletions(-) create mode 100644 pkg/controller/apis/config/BUILD create mode 100644 pkg/controller/apis/config/scheme/BUILD create mode 100644 pkg/controller/apis/config/v1alpha1/BUILD create mode 100644 pkg/controller/apis/config/v1alpha1/zz_generated.conversion.go create mode 100644 pkg/controller/apis/config/v1alpha1/zz_generated.defaults.go create mode 100644 pkg/controller/apis/config/zz_generated.deepcopy.go create mode 100644 staging/src/k8s.io/kube-controller-manager/config/v1alpha1/BUILD create mode 100644 staging/src/k8s.io/kube-controller-manager/config/v1alpha1/zz_generated.deepcopy.go diff --git a/cmd/controller-manager/app/options/BUILD b/cmd/controller-manager/app/options/BUILD index 6704f28b636..81939e51df2 100644 --- a/cmd/controller-manager/app/options/BUILD +++ b/cmd/controller-manager/app/options/BUILD @@ -12,8 +12,8 @@ go_library( importpath = "k8s.io/kubernetes/cmd/controller-manager/app/options", visibility = ["//visibility:public"], deps = [ - "//pkg/apis/componentconfig:go_default_library", "//pkg/client/leaderelectionconfig:go_default_library", + "//pkg/controller/apis/config:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/config:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library", diff --git a/cmd/kube-controller-manager/app/BUILD b/cmd/kube-controller-manager/app/BUILD index 7bbe9eb11ac..bbdcb19a044 100644 --- a/cmd/kube-controller-manager/app/BUILD +++ b/cmd/kube-controller-manager/app/BUILD @@ -28,7 +28,6 @@ go_library( "//pkg/apis/autoscaling/install:go_default_library", "//pkg/apis/batch/install:go_default_library", "//pkg/apis/certificates/install:go_default_library", - "//pkg/apis/componentconfig:go_default_library", "//pkg/apis/coordination/install:go_default_library", "//pkg/apis/core/install:go_default_library", "//pkg/apis/events/install:go_default_library", @@ -41,6 +40,7 @@ go_library( "//pkg/cloudprovider:go_default_library", "//pkg/cloudprovider/providers:go_default_library", "//pkg/controller:go_default_library", + "//pkg/controller/apis/config:go_default_library", "//pkg/controller/bootstrap:go_default_library", "//pkg/controller/certificates/approver:go_default_library", "//pkg/controller/certificates/cleaner:go_default_library", diff --git a/cmd/kube-controller-manager/app/config/BUILD b/cmd/kube-controller-manager/app/config/BUILD index 22f56c8adfe..2d684633279 100644 --- a/cmd/kube-controller-manager/app/config/BUILD +++ b/cmd/kube-controller-manager/app/config/BUILD @@ -6,7 +6,7 @@ go_library( importpath = "k8s.io/kubernetes/cmd/kube-controller-manager/app/config", visibility = ["//visibility:public"], deps = [ - "//pkg/apis/componentconfig:go_default_library", + "//pkg/controller/apis/config:go_default_library", "//staging/src/k8s.io/apiserver/pkg/server:go_default_library", "//staging/src/k8s.io/client-go/kubernetes:go_default_library", "//staging/src/k8s.io/client-go/rest:go_default_library", diff --git a/cmd/kube-controller-manager/app/options/BUILD b/cmd/kube-controller-manager/app/options/BUILD index 5ced23980b8..23d29b8bc0e 100644 --- a/cmd/kube-controller-manager/app/options/BUILD +++ b/cmd/kube-controller-manager/app/options/BUILD @@ -34,8 +34,8 @@ go_library( "//cmd/controller-manager/app/options:go_default_library", "//cmd/kube-controller-manager/app/config:go_default_library", "//pkg/api/legacyscheme:go_default_library", - "//pkg/apis/componentconfig:go_default_library", - "//pkg/apis/componentconfig/v1alpha1:go_default_library", + "//pkg/controller/apis/config:go_default_library", + "//pkg/controller/apis/config/v1alpha1:go_default_library", "//pkg/controller/garbagecollector:go_default_library", "//pkg/features:go_default_library", "//pkg/master/ports:go_default_library", @@ -51,6 +51,7 @@ go_library( "//staging/src/k8s.io/client-go/rest:go_default_library", "//staging/src/k8s.io/client-go/tools/clientcmd:go_default_library", "//staging/src/k8s.io/client-go/tools/record:go_default_library", + "//staging/src/k8s.io/kube-controller-manager/config/v1alpha1:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/github.com/spf13/pflag:go_default_library", ], @@ -76,7 +77,7 @@ go_test( tags = ["automanaged"], deps = [ "//cmd/controller-manager/app/options:go_default_library", - "//pkg/apis/componentconfig:go_default_library", + "//pkg/controller/apis/config:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/config:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/diff:go_default_library", diff --git a/pkg/apis/componentconfig/BUILD b/pkg/apis/componentconfig/BUILD index 5203a374b80..2573f7db5ab 100644 --- a/pkg/apis/componentconfig/BUILD +++ b/pkg/apis/componentconfig/BUILD @@ -17,13 +17,12 @@ go_library( ], importpath = "k8s.io/kubernetes/pkg/apis/componentconfig", deps = [ + "//pkg/controller/apis/config:go_default_library", "//staging/src/k8s.io/api/core/v1:go_default_library", - "//staging/src/k8s.io/apimachinery/pkg/apis/config:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/net:go_default_library", - "//staging/src/k8s.io/apiserver/pkg/apis/config:go_default_library", ], ) diff --git a/pkg/apis/componentconfig/v1alpha1/BUILD b/pkg/apis/componentconfig/v1alpha1/BUILD index f1bd6e9276b..a97e0a1cec3 100644 --- a/pkg/apis/componentconfig/v1alpha1/BUILD +++ b/pkg/apis/componentconfig/v1alpha1/BUILD @@ -20,13 +20,12 @@ go_library( importpath = "k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1", deps = [ "//pkg/apis/componentconfig:go_default_library", - "//staging/src/k8s.io/apimachinery/pkg/apis/config/v1alpha1:go_default_library", + "//pkg/controller/apis/config/v1alpha1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/conversion:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library", - "//staging/src/k8s.io/apiserver/pkg/apis/config/v1alpha1:go_default_library", - "//vendor/k8s.io/utils/pointer:go_default_library", + "//staging/src/k8s.io/kube-controller-manager/config/v1alpha1:go_default_library", ], ) diff --git a/pkg/apis/componentconfig/v1alpha1/zz_generated.conversion.go b/pkg/apis/componentconfig/v1alpha1/zz_generated.conversion.go index ca28fcbfe6f..5ab7df1d84a 100644 --- a/pkg/apis/componentconfig/v1alpha1/zz_generated.conversion.go +++ b/pkg/apis/componentconfig/v1alpha1/zz_generated.conversion.go @@ -21,14 +21,10 @@ limitations under the License. package v1alpha1 import ( - unsafe "unsafe" - - configv1alpha1 "k8s.io/apimachinery/pkg/apis/config/v1alpha1" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" - apisconfigv1alpha1 "k8s.io/apiserver/pkg/apis/config/v1alpha1" componentconfig "k8s.io/kubernetes/pkg/apis/componentconfig" + configv1alpha1 "k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1" ) func init() { @@ -38,26 +34,6 @@ func init() { // RegisterConversions adds conversion functions to the given scheme. // Public to allow building arbitrary schemes. func RegisterConversions(s *runtime.Scheme) error { - if err := s.AddGeneratedConversionFunc((*AttachDetachControllerConfiguration)(nil), (*componentconfig.AttachDetachControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_AttachDetachControllerConfiguration_To_componentconfig_AttachDetachControllerConfiguration(a.(*AttachDetachControllerConfiguration), b.(*componentconfig.AttachDetachControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.AttachDetachControllerConfiguration)(nil), (*AttachDetachControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration(a.(*componentconfig.AttachDetachControllerConfiguration), b.(*AttachDetachControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*CSRSigningControllerConfiguration)(nil), (*componentconfig.CSRSigningControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_CSRSigningControllerConfiguration_To_componentconfig_CSRSigningControllerConfiguration(a.(*CSRSigningControllerConfiguration), b.(*componentconfig.CSRSigningControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.CSRSigningControllerConfiguration)(nil), (*CSRSigningControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(a.(*componentconfig.CSRSigningControllerConfiguration), b.(*CSRSigningControllerConfiguration), scope) - }); err != nil { - return err - } if err := s.AddGeneratedConversionFunc((*CloudControllerManagerConfiguration)(nil), (*componentconfig.CloudControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { return Convert_v1alpha1_CloudControllerManagerConfiguration_To_componentconfig_CloudControllerManagerConfiguration(a.(*CloudControllerManagerConfiguration), b.(*componentconfig.CloudControllerManagerConfiguration), scope) }); err != nil { @@ -68,303 +44,17 @@ func RegisterConversions(s *runtime.Scheme) error { }); err != nil { return err } - if err := s.AddGeneratedConversionFunc((*CloudProviderConfiguration)(nil), (*componentconfig.CloudProviderConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_CloudProviderConfiguration_To_componentconfig_CloudProviderConfiguration(a.(*CloudProviderConfiguration), b.(*componentconfig.CloudProviderConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.CloudProviderConfiguration)(nil), (*CloudProviderConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration(a.(*componentconfig.CloudProviderConfiguration), b.(*CloudProviderConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*DaemonSetControllerConfiguration)(nil), (*componentconfig.DaemonSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_DaemonSetControllerConfiguration_To_componentconfig_DaemonSetControllerConfiguration(a.(*DaemonSetControllerConfiguration), b.(*componentconfig.DaemonSetControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.DaemonSetControllerConfiguration)(nil), (*DaemonSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(a.(*componentconfig.DaemonSetControllerConfiguration), b.(*DaemonSetControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*DeploymentControllerConfiguration)(nil), (*componentconfig.DeploymentControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_DeploymentControllerConfiguration_To_componentconfig_DeploymentControllerConfiguration(a.(*DeploymentControllerConfiguration), b.(*componentconfig.DeploymentControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.DeploymentControllerConfiguration)(nil), (*DeploymentControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(a.(*componentconfig.DeploymentControllerConfiguration), b.(*DeploymentControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*DeprecatedControllerConfiguration)(nil), (*componentconfig.DeprecatedControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_DeprecatedControllerConfiguration_To_componentconfig_DeprecatedControllerConfiguration(a.(*DeprecatedControllerConfiguration), b.(*componentconfig.DeprecatedControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.DeprecatedControllerConfiguration)(nil), (*DeprecatedControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(a.(*componentconfig.DeprecatedControllerConfiguration), b.(*DeprecatedControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*EndpointControllerConfiguration)(nil), (*componentconfig.EndpointControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_EndpointControllerConfiguration_To_componentconfig_EndpointControllerConfiguration(a.(*EndpointControllerConfiguration), b.(*componentconfig.EndpointControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.EndpointControllerConfiguration)(nil), (*EndpointControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(a.(*componentconfig.EndpointControllerConfiguration), b.(*EndpointControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*GarbageCollectorControllerConfiguration)(nil), (*componentconfig.GarbageCollectorControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_GarbageCollectorControllerConfiguration_To_componentconfig_GarbageCollectorControllerConfiguration(a.(*GarbageCollectorControllerConfiguration), b.(*componentconfig.GarbageCollectorControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.GarbageCollectorControllerConfiguration)(nil), (*GarbageCollectorControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration(a.(*componentconfig.GarbageCollectorControllerConfiguration), b.(*GarbageCollectorControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*GenericControllerManagerConfiguration)(nil), (*componentconfig.GenericControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_GenericControllerManagerConfiguration_To_componentconfig_GenericControllerManagerConfiguration(a.(*GenericControllerManagerConfiguration), b.(*componentconfig.GenericControllerManagerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.GenericControllerManagerConfiguration)(nil), (*GenericControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(a.(*componentconfig.GenericControllerManagerConfiguration), b.(*GenericControllerManagerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*GroupResource)(nil), (*componentconfig.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_GroupResource_To_componentconfig_GroupResource(a.(*GroupResource), b.(*componentconfig.GroupResource), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.GroupResource)(nil), (*GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_GroupResource_To_v1alpha1_GroupResource(a.(*componentconfig.GroupResource), b.(*GroupResource), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*HPAControllerConfiguration)(nil), (*componentconfig.HPAControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_HPAControllerConfiguration_To_componentconfig_HPAControllerConfiguration(a.(*HPAControllerConfiguration), b.(*componentconfig.HPAControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.HPAControllerConfiguration)(nil), (*HPAControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration(a.(*componentconfig.HPAControllerConfiguration), b.(*HPAControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*JobControllerConfiguration)(nil), (*componentconfig.JobControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_JobControllerConfiguration_To_componentconfig_JobControllerConfiguration(a.(*JobControllerConfiguration), b.(*componentconfig.JobControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.JobControllerConfiguration)(nil), (*JobControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration(a.(*componentconfig.JobControllerConfiguration), b.(*JobControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*KubeCloudSharedConfiguration)(nil), (*componentconfig.KubeCloudSharedConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_KubeCloudSharedConfiguration_To_componentconfig_KubeCloudSharedConfiguration(a.(*KubeCloudSharedConfiguration), b.(*componentconfig.KubeCloudSharedConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.KubeCloudSharedConfiguration)(nil), (*KubeCloudSharedConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(a.(*componentconfig.KubeCloudSharedConfiguration), b.(*KubeCloudSharedConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*KubeControllerManagerConfiguration)(nil), (*componentconfig.KubeControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_KubeControllerManagerConfiguration_To_componentconfig_KubeControllerManagerConfiguration(a.(*KubeControllerManagerConfiguration), b.(*componentconfig.KubeControllerManagerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.KubeControllerManagerConfiguration)(nil), (*KubeControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_KubeControllerManagerConfiguration_To_v1alpha1_KubeControllerManagerConfiguration(a.(*componentconfig.KubeControllerManagerConfiguration), b.(*KubeControllerManagerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*NamespaceControllerConfiguration)(nil), (*componentconfig.NamespaceControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_NamespaceControllerConfiguration_To_componentconfig_NamespaceControllerConfiguration(a.(*NamespaceControllerConfiguration), b.(*componentconfig.NamespaceControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.NamespaceControllerConfiguration)(nil), (*NamespaceControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration(a.(*componentconfig.NamespaceControllerConfiguration), b.(*NamespaceControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*NodeIPAMControllerConfiguration)(nil), (*componentconfig.NodeIPAMControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_NodeIPAMControllerConfiguration_To_componentconfig_NodeIPAMControllerConfiguration(a.(*NodeIPAMControllerConfiguration), b.(*componentconfig.NodeIPAMControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.NodeIPAMControllerConfiguration)(nil), (*NodeIPAMControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration(a.(*componentconfig.NodeIPAMControllerConfiguration), b.(*NodeIPAMControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*NodeLifecycleControllerConfiguration)(nil), (*componentconfig.NodeLifecycleControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_NodeLifecycleControllerConfiguration_To_componentconfig_NodeLifecycleControllerConfiguration(a.(*NodeLifecycleControllerConfiguration), b.(*componentconfig.NodeLifecycleControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.NodeLifecycleControllerConfiguration)(nil), (*NodeLifecycleControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration(a.(*componentconfig.NodeLifecycleControllerConfiguration), b.(*NodeLifecycleControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*PersistentVolumeBinderControllerConfiguration)(nil), (*componentconfig.PersistentVolumeBinderControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_componentconfig_PersistentVolumeBinderControllerConfiguration(a.(*PersistentVolumeBinderControllerConfiguration), b.(*componentconfig.PersistentVolumeBinderControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.PersistentVolumeBinderControllerConfiguration)(nil), (*PersistentVolumeBinderControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration(a.(*componentconfig.PersistentVolumeBinderControllerConfiguration), b.(*PersistentVolumeBinderControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*PersistentVolumeRecyclerConfiguration)(nil), (*componentconfig.PersistentVolumeRecyclerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_componentconfig_PersistentVolumeRecyclerConfiguration(a.(*PersistentVolumeRecyclerConfiguration), b.(*componentconfig.PersistentVolumeRecyclerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.PersistentVolumeRecyclerConfiguration)(nil), (*PersistentVolumeRecyclerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration(a.(*componentconfig.PersistentVolumeRecyclerConfiguration), b.(*PersistentVolumeRecyclerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*PodGCControllerConfiguration)(nil), (*componentconfig.PodGCControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_PodGCControllerConfiguration_To_componentconfig_PodGCControllerConfiguration(a.(*PodGCControllerConfiguration), b.(*componentconfig.PodGCControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.PodGCControllerConfiguration)(nil), (*PodGCControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration(a.(*componentconfig.PodGCControllerConfiguration), b.(*PodGCControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*ReplicaSetControllerConfiguration)(nil), (*componentconfig.ReplicaSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_ReplicaSetControllerConfiguration_To_componentconfig_ReplicaSetControllerConfiguration(a.(*ReplicaSetControllerConfiguration), b.(*componentconfig.ReplicaSetControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.ReplicaSetControllerConfiguration)(nil), (*ReplicaSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration(a.(*componentconfig.ReplicaSetControllerConfiguration), b.(*ReplicaSetControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*ReplicationControllerConfiguration)(nil), (*componentconfig.ReplicationControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_ReplicationControllerConfiguration_To_componentconfig_ReplicationControllerConfiguration(a.(*ReplicationControllerConfiguration), b.(*componentconfig.ReplicationControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.ReplicationControllerConfiguration)(nil), (*ReplicationControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration(a.(*componentconfig.ReplicationControllerConfiguration), b.(*ReplicationControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*ResourceQuotaControllerConfiguration)(nil), (*componentconfig.ResourceQuotaControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_ResourceQuotaControllerConfiguration_To_componentconfig_ResourceQuotaControllerConfiguration(a.(*ResourceQuotaControllerConfiguration), b.(*componentconfig.ResourceQuotaControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.ResourceQuotaControllerConfiguration)(nil), (*ResourceQuotaControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration(a.(*componentconfig.ResourceQuotaControllerConfiguration), b.(*ResourceQuotaControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*SAControllerConfiguration)(nil), (*componentconfig.SAControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_SAControllerConfiguration_To_componentconfig_SAControllerConfiguration(a.(*SAControllerConfiguration), b.(*componentconfig.SAControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.SAControllerConfiguration)(nil), (*SAControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration(a.(*componentconfig.SAControllerConfiguration), b.(*SAControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*ServiceControllerConfiguration)(nil), (*componentconfig.ServiceControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_ServiceControllerConfiguration_To_componentconfig_ServiceControllerConfiguration(a.(*ServiceControllerConfiguration), b.(*componentconfig.ServiceControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.ServiceControllerConfiguration)(nil), (*ServiceControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(a.(*componentconfig.ServiceControllerConfiguration), b.(*ServiceControllerConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*VolumeConfiguration)(nil), (*componentconfig.VolumeConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_v1alpha1_VolumeConfiguration_To_componentconfig_VolumeConfiguration(a.(*VolumeConfiguration), b.(*componentconfig.VolumeConfiguration), scope) - }); err != nil { - return err - } - if err := s.AddGeneratedConversionFunc((*componentconfig.VolumeConfiguration)(nil), (*VolumeConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { - return Convert_componentconfig_VolumeConfiguration_To_v1alpha1_VolumeConfiguration(a.(*componentconfig.VolumeConfiguration), b.(*VolumeConfiguration), scope) - }); err != nil { - return err - } return nil } -func autoConvert_v1alpha1_AttachDetachControllerConfiguration_To_componentconfig_AttachDetachControllerConfiguration(in *AttachDetachControllerConfiguration, out *componentconfig.AttachDetachControllerConfiguration, s conversion.Scope) error { - out.DisableAttachDetachReconcilerSync = in.DisableAttachDetachReconcilerSync - out.ReconcilerSyncLoopPeriod = in.ReconcilerSyncLoopPeriod - return nil -} - -// Convert_v1alpha1_AttachDetachControllerConfiguration_To_componentconfig_AttachDetachControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_AttachDetachControllerConfiguration_To_componentconfig_AttachDetachControllerConfiguration(in *AttachDetachControllerConfiguration, out *componentconfig.AttachDetachControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_AttachDetachControllerConfiguration_To_componentconfig_AttachDetachControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration(in *componentconfig.AttachDetachControllerConfiguration, out *AttachDetachControllerConfiguration, s conversion.Scope) error { - out.DisableAttachDetachReconcilerSync = in.DisableAttachDetachReconcilerSync - out.ReconcilerSyncLoopPeriod = in.ReconcilerSyncLoopPeriod - return nil -} - -// Convert_componentconfig_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration(in *componentconfig.AttachDetachControllerConfiguration, out *AttachDetachControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_CSRSigningControllerConfiguration_To_componentconfig_CSRSigningControllerConfiguration(in *CSRSigningControllerConfiguration, out *componentconfig.CSRSigningControllerConfiguration, s conversion.Scope) error { - out.ClusterSigningCertFile = in.ClusterSigningCertFile - out.ClusterSigningKeyFile = in.ClusterSigningKeyFile - out.ClusterSigningDuration = in.ClusterSigningDuration - return nil -} - -// Convert_v1alpha1_CSRSigningControllerConfiguration_To_componentconfig_CSRSigningControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_CSRSigningControllerConfiguration_To_componentconfig_CSRSigningControllerConfiguration(in *CSRSigningControllerConfiguration, out *componentconfig.CSRSigningControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_CSRSigningControllerConfiguration_To_componentconfig_CSRSigningControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(in *componentconfig.CSRSigningControllerConfiguration, out *CSRSigningControllerConfiguration, s conversion.Scope) error { - out.ClusterSigningCertFile = in.ClusterSigningCertFile - out.ClusterSigningKeyFile = in.ClusterSigningKeyFile - out.ClusterSigningDuration = in.ClusterSigningDuration - return nil -} - -// Convert_componentconfig_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(in *componentconfig.CSRSigningControllerConfiguration, out *CSRSigningControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(in, out, s) -} - func autoConvert_v1alpha1_CloudControllerManagerConfiguration_To_componentconfig_CloudControllerManagerConfiguration(in *CloudControllerManagerConfiguration, out *componentconfig.CloudControllerManagerConfiguration, s conversion.Scope) error { - if err := Convert_v1alpha1_GenericControllerManagerConfiguration_To_componentconfig_GenericControllerManagerConfiguration(&in.Generic, &out.Generic, s); err != nil { + if err := configv1alpha1.Convert_v1alpha1_GenericControllerManagerConfiguration_To_config_GenericControllerManagerConfiguration(&in.Generic, &out.Generic, s); err != nil { return err } - if err := Convert_v1alpha1_KubeCloudSharedConfiguration_To_componentconfig_KubeCloudSharedConfiguration(&in.KubeCloudShared, &out.KubeCloudShared, s); err != nil { + if err := configv1alpha1.Convert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConfiguration(&in.KubeCloudShared, &out.KubeCloudShared, s); err != nil { return err } - if err := Convert_v1alpha1_ServiceControllerConfiguration_To_componentconfig_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil { + if err := configv1alpha1.Convert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil { return err } out.NodeStatusUpdateFrequency = in.NodeStatusUpdateFrequency @@ -377,13 +67,13 @@ func Convert_v1alpha1_CloudControllerManagerConfiguration_To_componentconfig_Clo } func autoConvert_componentconfig_CloudControllerManagerConfiguration_To_v1alpha1_CloudControllerManagerConfiguration(in *componentconfig.CloudControllerManagerConfiguration, out *CloudControllerManagerConfiguration, s conversion.Scope) error { - if err := Convert_componentconfig_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(&in.Generic, &out.Generic, s); err != nil { + if err := configv1alpha1.Convert_config_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(&in.Generic, &out.Generic, s); err != nil { return err } - if err := Convert_componentconfig_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(&in.KubeCloudShared, &out.KubeCloudShared, s); err != nil { + if err := configv1alpha1.Convert_config_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(&in.KubeCloudShared, &out.KubeCloudShared, s); err != nil { return err } - if err := Convert_componentconfig_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil { + if err := configv1alpha1.Convert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil { return err } out.NodeStatusUpdateFrequency = in.NodeStatusUpdateFrequency @@ -394,763 +84,3 @@ func autoConvert_componentconfig_CloudControllerManagerConfiguration_To_v1alpha1 func Convert_componentconfig_CloudControllerManagerConfiguration_To_v1alpha1_CloudControllerManagerConfiguration(in *componentconfig.CloudControllerManagerConfiguration, out *CloudControllerManagerConfiguration, s conversion.Scope) error { return autoConvert_componentconfig_CloudControllerManagerConfiguration_To_v1alpha1_CloudControllerManagerConfiguration(in, out, s) } - -func autoConvert_v1alpha1_CloudProviderConfiguration_To_componentconfig_CloudProviderConfiguration(in *CloudProviderConfiguration, out *componentconfig.CloudProviderConfiguration, s conversion.Scope) error { - out.Name = in.Name - out.CloudConfigFile = in.CloudConfigFile - return nil -} - -// Convert_v1alpha1_CloudProviderConfiguration_To_componentconfig_CloudProviderConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_CloudProviderConfiguration_To_componentconfig_CloudProviderConfiguration(in *CloudProviderConfiguration, out *componentconfig.CloudProviderConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_CloudProviderConfiguration_To_componentconfig_CloudProviderConfiguration(in, out, s) -} - -func autoConvert_componentconfig_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration(in *componentconfig.CloudProviderConfiguration, out *CloudProviderConfiguration, s conversion.Scope) error { - out.Name = in.Name - out.CloudConfigFile = in.CloudConfigFile - return nil -} - -// Convert_componentconfig_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration is an autogenerated conversion function. -func Convert_componentconfig_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration(in *componentconfig.CloudProviderConfiguration, out *CloudProviderConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_DaemonSetControllerConfiguration_To_componentconfig_DaemonSetControllerConfiguration(in *DaemonSetControllerConfiguration, out *componentconfig.DaemonSetControllerConfiguration, s conversion.Scope) error { - out.ConcurrentDaemonSetSyncs = in.ConcurrentDaemonSetSyncs - return nil -} - -// Convert_v1alpha1_DaemonSetControllerConfiguration_To_componentconfig_DaemonSetControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_DaemonSetControllerConfiguration_To_componentconfig_DaemonSetControllerConfiguration(in *DaemonSetControllerConfiguration, out *componentconfig.DaemonSetControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_DaemonSetControllerConfiguration_To_componentconfig_DaemonSetControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(in *componentconfig.DaemonSetControllerConfiguration, out *DaemonSetControllerConfiguration, s conversion.Scope) error { - out.ConcurrentDaemonSetSyncs = in.ConcurrentDaemonSetSyncs - return nil -} - -// Convert_componentconfig_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(in *componentconfig.DaemonSetControllerConfiguration, out *DaemonSetControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_DeploymentControllerConfiguration_To_componentconfig_DeploymentControllerConfiguration(in *DeploymentControllerConfiguration, out *componentconfig.DeploymentControllerConfiguration, s conversion.Scope) error { - out.ConcurrentDeploymentSyncs = in.ConcurrentDeploymentSyncs - out.DeploymentControllerSyncPeriod = in.DeploymentControllerSyncPeriod - return nil -} - -// Convert_v1alpha1_DeploymentControllerConfiguration_To_componentconfig_DeploymentControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_DeploymentControllerConfiguration_To_componentconfig_DeploymentControllerConfiguration(in *DeploymentControllerConfiguration, out *componentconfig.DeploymentControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_DeploymentControllerConfiguration_To_componentconfig_DeploymentControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(in *componentconfig.DeploymentControllerConfiguration, out *DeploymentControllerConfiguration, s conversion.Scope) error { - out.ConcurrentDeploymentSyncs = in.ConcurrentDeploymentSyncs - out.DeploymentControllerSyncPeriod = in.DeploymentControllerSyncPeriod - return nil -} - -// Convert_componentconfig_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(in *componentconfig.DeploymentControllerConfiguration, out *DeploymentControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_DeprecatedControllerConfiguration_To_componentconfig_DeprecatedControllerConfiguration(in *DeprecatedControllerConfiguration, out *componentconfig.DeprecatedControllerConfiguration, s conversion.Scope) error { - out.DeletingPodsQps = in.DeletingPodsQps - out.DeletingPodsBurst = in.DeletingPodsBurst - out.RegisterRetryCount = in.RegisterRetryCount - return nil -} - -// Convert_v1alpha1_DeprecatedControllerConfiguration_To_componentconfig_DeprecatedControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_DeprecatedControllerConfiguration_To_componentconfig_DeprecatedControllerConfiguration(in *DeprecatedControllerConfiguration, out *componentconfig.DeprecatedControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_DeprecatedControllerConfiguration_To_componentconfig_DeprecatedControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(in *componentconfig.DeprecatedControllerConfiguration, out *DeprecatedControllerConfiguration, s conversion.Scope) error { - out.DeletingPodsQps = in.DeletingPodsQps - out.DeletingPodsBurst = in.DeletingPodsBurst - out.RegisterRetryCount = in.RegisterRetryCount - return nil -} - -// Convert_componentconfig_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(in *componentconfig.DeprecatedControllerConfiguration, out *DeprecatedControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_EndpointControllerConfiguration_To_componentconfig_EndpointControllerConfiguration(in *EndpointControllerConfiguration, out *componentconfig.EndpointControllerConfiguration, s conversion.Scope) error { - out.ConcurrentEndpointSyncs = in.ConcurrentEndpointSyncs - return nil -} - -// Convert_v1alpha1_EndpointControllerConfiguration_To_componentconfig_EndpointControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_EndpointControllerConfiguration_To_componentconfig_EndpointControllerConfiguration(in *EndpointControllerConfiguration, out *componentconfig.EndpointControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_EndpointControllerConfiguration_To_componentconfig_EndpointControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(in *componentconfig.EndpointControllerConfiguration, out *EndpointControllerConfiguration, s conversion.Scope) error { - out.ConcurrentEndpointSyncs = in.ConcurrentEndpointSyncs - return nil -} - -// Convert_componentconfig_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(in *componentconfig.EndpointControllerConfiguration, out *EndpointControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_GarbageCollectorControllerConfiguration_To_componentconfig_GarbageCollectorControllerConfiguration(in *GarbageCollectorControllerConfiguration, out *componentconfig.GarbageCollectorControllerConfiguration, s conversion.Scope) error { - if err := v1.Convert_Pointer_bool_To_bool(&in.EnableGarbageCollector, &out.EnableGarbageCollector, s); err != nil { - return err - } - out.ConcurrentGCSyncs = in.ConcurrentGCSyncs - out.GCIgnoredResources = *(*[]componentconfig.GroupResource)(unsafe.Pointer(&in.GCIgnoredResources)) - return nil -} - -// Convert_v1alpha1_GarbageCollectorControllerConfiguration_To_componentconfig_GarbageCollectorControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_GarbageCollectorControllerConfiguration_To_componentconfig_GarbageCollectorControllerConfiguration(in *GarbageCollectorControllerConfiguration, out *componentconfig.GarbageCollectorControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_GarbageCollectorControllerConfiguration_To_componentconfig_GarbageCollectorControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration(in *componentconfig.GarbageCollectorControllerConfiguration, out *GarbageCollectorControllerConfiguration, s conversion.Scope) error { - if err := v1.Convert_bool_To_Pointer_bool(&in.EnableGarbageCollector, &out.EnableGarbageCollector, s); err != nil { - return err - } - out.ConcurrentGCSyncs = in.ConcurrentGCSyncs - out.GCIgnoredResources = *(*[]GroupResource)(unsafe.Pointer(&in.GCIgnoredResources)) - return nil -} - -// Convert_componentconfig_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration(in *componentconfig.GarbageCollectorControllerConfiguration, out *GarbageCollectorControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_GenericControllerManagerConfiguration_To_componentconfig_GenericControllerManagerConfiguration(in *GenericControllerManagerConfiguration, out *componentconfig.GenericControllerManagerConfiguration, s conversion.Scope) error { - out.Port = in.Port - out.Address = in.Address - out.MinResyncPeriod = in.MinResyncPeriod - if err := configv1alpha1.Convert_v1alpha1_ClientConnectionConfiguration_To_config_ClientConnectionConfiguration(&in.ClientConnection, &out.ClientConnection, s); err != nil { - return err - } - out.ControllerStartInterval = in.ControllerStartInterval - if err := apisconfigv1alpha1.Convert_v1alpha1_LeaderElectionConfiguration_To_config_LeaderElectionConfiguration(&in.LeaderElection, &out.LeaderElection, s); err != nil { - return err - } - out.Controllers = *(*[]string)(unsafe.Pointer(&in.Controllers)) - if err := apisconfigv1alpha1.Convert_v1alpha1_DebuggingConfiguration_To_config_DebuggingConfiguration(&in.Debugging, &out.Debugging, s); err != nil { - return err - } - return nil -} - -// Convert_v1alpha1_GenericControllerManagerConfiguration_To_componentconfig_GenericControllerManagerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_GenericControllerManagerConfiguration_To_componentconfig_GenericControllerManagerConfiguration(in *GenericControllerManagerConfiguration, out *componentconfig.GenericControllerManagerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_GenericControllerManagerConfiguration_To_componentconfig_GenericControllerManagerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(in *componentconfig.GenericControllerManagerConfiguration, out *GenericControllerManagerConfiguration, s conversion.Scope) error { - out.Port = in.Port - out.Address = in.Address - out.MinResyncPeriod = in.MinResyncPeriod - if err := configv1alpha1.Convert_config_ClientConnectionConfiguration_To_v1alpha1_ClientConnectionConfiguration(&in.ClientConnection, &out.ClientConnection, s); err != nil { - return err - } - out.ControllerStartInterval = in.ControllerStartInterval - if err := apisconfigv1alpha1.Convert_config_LeaderElectionConfiguration_To_v1alpha1_LeaderElectionConfiguration(&in.LeaderElection, &out.LeaderElection, s); err != nil { - return err - } - out.Controllers = *(*[]string)(unsafe.Pointer(&in.Controllers)) - if err := apisconfigv1alpha1.Convert_config_DebuggingConfiguration_To_v1alpha1_DebuggingConfiguration(&in.Debugging, &out.Debugging, s); err != nil { - return err - } - return nil -} - -// Convert_componentconfig_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(in *componentconfig.GenericControllerManagerConfiguration, out *GenericControllerManagerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_GroupResource_To_componentconfig_GroupResource(in *GroupResource, out *componentconfig.GroupResource, s conversion.Scope) error { - out.Group = in.Group - out.Resource = in.Resource - return nil -} - -// Convert_v1alpha1_GroupResource_To_componentconfig_GroupResource is an autogenerated conversion function. -func Convert_v1alpha1_GroupResource_To_componentconfig_GroupResource(in *GroupResource, out *componentconfig.GroupResource, s conversion.Scope) error { - return autoConvert_v1alpha1_GroupResource_To_componentconfig_GroupResource(in, out, s) -} - -func autoConvert_componentconfig_GroupResource_To_v1alpha1_GroupResource(in *componentconfig.GroupResource, out *GroupResource, s conversion.Scope) error { - out.Group = in.Group - out.Resource = in.Resource - return nil -} - -// Convert_componentconfig_GroupResource_To_v1alpha1_GroupResource is an autogenerated conversion function. -func Convert_componentconfig_GroupResource_To_v1alpha1_GroupResource(in *componentconfig.GroupResource, out *GroupResource, s conversion.Scope) error { - return autoConvert_componentconfig_GroupResource_To_v1alpha1_GroupResource(in, out, s) -} - -func autoConvert_v1alpha1_HPAControllerConfiguration_To_componentconfig_HPAControllerConfiguration(in *HPAControllerConfiguration, out *componentconfig.HPAControllerConfiguration, s conversion.Scope) error { - out.HorizontalPodAutoscalerSyncPeriod = in.HorizontalPodAutoscalerSyncPeriod - out.HorizontalPodAutoscalerUpscaleForbiddenWindow = in.HorizontalPodAutoscalerUpscaleForbiddenWindow - out.HorizontalPodAutoscalerDownscaleStabilizationWindow = in.HorizontalPodAutoscalerDownscaleStabilizationWindow - out.HorizontalPodAutoscalerDownscaleForbiddenWindow = in.HorizontalPodAutoscalerDownscaleForbiddenWindow - out.HorizontalPodAutoscalerTolerance = in.HorizontalPodAutoscalerTolerance - if err := v1.Convert_Pointer_bool_To_bool(&in.HorizontalPodAutoscalerUseRESTClients, &out.HorizontalPodAutoscalerUseRESTClients, s); err != nil { - return err - } - out.HorizontalPodAutoscalerCPUInitializationPeriod = in.HorizontalPodAutoscalerCPUInitializationPeriod - out.HorizontalPodAutoscalerInitialReadinessDelay = in.HorizontalPodAutoscalerInitialReadinessDelay - return nil -} - -// Convert_v1alpha1_HPAControllerConfiguration_To_componentconfig_HPAControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_HPAControllerConfiguration_To_componentconfig_HPAControllerConfiguration(in *HPAControllerConfiguration, out *componentconfig.HPAControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_HPAControllerConfiguration_To_componentconfig_HPAControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration(in *componentconfig.HPAControllerConfiguration, out *HPAControllerConfiguration, s conversion.Scope) error { - out.HorizontalPodAutoscalerSyncPeriod = in.HorizontalPodAutoscalerSyncPeriod - out.HorizontalPodAutoscalerUpscaleForbiddenWindow = in.HorizontalPodAutoscalerUpscaleForbiddenWindow - out.HorizontalPodAutoscalerDownscaleForbiddenWindow = in.HorizontalPodAutoscalerDownscaleForbiddenWindow - out.HorizontalPodAutoscalerDownscaleStabilizationWindow = in.HorizontalPodAutoscalerDownscaleStabilizationWindow - out.HorizontalPodAutoscalerTolerance = in.HorizontalPodAutoscalerTolerance - if err := v1.Convert_bool_To_Pointer_bool(&in.HorizontalPodAutoscalerUseRESTClients, &out.HorizontalPodAutoscalerUseRESTClients, s); err != nil { - return err - } - out.HorizontalPodAutoscalerCPUInitializationPeriod = in.HorizontalPodAutoscalerCPUInitializationPeriod - out.HorizontalPodAutoscalerInitialReadinessDelay = in.HorizontalPodAutoscalerInitialReadinessDelay - return nil -} - -// Convert_componentconfig_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration(in *componentconfig.HPAControllerConfiguration, out *HPAControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_JobControllerConfiguration_To_componentconfig_JobControllerConfiguration(in *JobControllerConfiguration, out *componentconfig.JobControllerConfiguration, s conversion.Scope) error { - out.ConcurrentJobSyncs = in.ConcurrentJobSyncs - return nil -} - -// Convert_v1alpha1_JobControllerConfiguration_To_componentconfig_JobControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_JobControllerConfiguration_To_componentconfig_JobControllerConfiguration(in *JobControllerConfiguration, out *componentconfig.JobControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_JobControllerConfiguration_To_componentconfig_JobControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration(in *componentconfig.JobControllerConfiguration, out *JobControllerConfiguration, s conversion.Scope) error { - out.ConcurrentJobSyncs = in.ConcurrentJobSyncs - return nil -} - -// Convert_componentconfig_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration(in *componentconfig.JobControllerConfiguration, out *JobControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_KubeCloudSharedConfiguration_To_componentconfig_KubeCloudSharedConfiguration(in *KubeCloudSharedConfiguration, out *componentconfig.KubeCloudSharedConfiguration, s conversion.Scope) error { - if err := Convert_v1alpha1_CloudProviderConfiguration_To_componentconfig_CloudProviderConfiguration(&in.CloudProvider, &out.CloudProvider, s); err != nil { - return err - } - out.ExternalCloudVolumePlugin = in.ExternalCloudVolumePlugin - out.UseServiceAccountCredentials = in.UseServiceAccountCredentials - out.AllowUntaggedCloud = in.AllowUntaggedCloud - out.RouteReconciliationPeriod = in.RouteReconciliationPeriod - out.NodeMonitorPeriod = in.NodeMonitorPeriod - out.ClusterName = in.ClusterName - out.ClusterCIDR = in.ClusterCIDR - out.AllocateNodeCIDRs = in.AllocateNodeCIDRs - out.CIDRAllocatorType = in.CIDRAllocatorType - if err := v1.Convert_Pointer_bool_To_bool(&in.ConfigureCloudRoutes, &out.ConfigureCloudRoutes, s); err != nil { - return err - } - out.NodeSyncPeriod = in.NodeSyncPeriod - return nil -} - -// Convert_v1alpha1_KubeCloudSharedConfiguration_To_componentconfig_KubeCloudSharedConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_KubeCloudSharedConfiguration_To_componentconfig_KubeCloudSharedConfiguration(in *KubeCloudSharedConfiguration, out *componentconfig.KubeCloudSharedConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_KubeCloudSharedConfiguration_To_componentconfig_KubeCloudSharedConfiguration(in, out, s) -} - -func autoConvert_componentconfig_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(in *componentconfig.KubeCloudSharedConfiguration, out *KubeCloudSharedConfiguration, s conversion.Scope) error { - if err := Convert_componentconfig_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration(&in.CloudProvider, &out.CloudProvider, s); err != nil { - return err - } - out.ExternalCloudVolumePlugin = in.ExternalCloudVolumePlugin - out.UseServiceAccountCredentials = in.UseServiceAccountCredentials - out.AllowUntaggedCloud = in.AllowUntaggedCloud - out.RouteReconciliationPeriod = in.RouteReconciliationPeriod - out.NodeMonitorPeriod = in.NodeMonitorPeriod - out.ClusterName = in.ClusterName - out.ClusterCIDR = in.ClusterCIDR - out.AllocateNodeCIDRs = in.AllocateNodeCIDRs - out.CIDRAllocatorType = in.CIDRAllocatorType - if err := v1.Convert_bool_To_Pointer_bool(&in.ConfigureCloudRoutes, &out.ConfigureCloudRoutes, s); err != nil { - return err - } - out.NodeSyncPeriod = in.NodeSyncPeriod - return nil -} - -// Convert_componentconfig_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration is an autogenerated conversion function. -func Convert_componentconfig_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(in *componentconfig.KubeCloudSharedConfiguration, out *KubeCloudSharedConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_KubeControllerManagerConfiguration_To_componentconfig_KubeControllerManagerConfiguration(in *KubeControllerManagerConfiguration, out *componentconfig.KubeControllerManagerConfiguration, s conversion.Scope) error { - if err := Convert_v1alpha1_GenericControllerManagerConfiguration_To_componentconfig_GenericControllerManagerConfiguration(&in.Generic, &out.Generic, s); err != nil { - return err - } - if err := Convert_v1alpha1_KubeCloudSharedConfiguration_To_componentconfig_KubeCloudSharedConfiguration(&in.KubeCloudShared, &out.KubeCloudShared, s); err != nil { - return err - } - if err := Convert_v1alpha1_AttachDetachControllerConfiguration_To_componentconfig_AttachDetachControllerConfiguration(&in.AttachDetachController, &out.AttachDetachController, s); err != nil { - return err - } - if err := Convert_v1alpha1_CSRSigningControllerConfiguration_To_componentconfig_CSRSigningControllerConfiguration(&in.CSRSigningController, &out.CSRSigningController, s); err != nil { - return err - } - if err := Convert_v1alpha1_DaemonSetControllerConfiguration_To_componentconfig_DaemonSetControllerConfiguration(&in.DaemonSetController, &out.DaemonSetController, s); err != nil { - return err - } - if err := Convert_v1alpha1_DeploymentControllerConfiguration_To_componentconfig_DeploymentControllerConfiguration(&in.DeploymentController, &out.DeploymentController, s); err != nil { - return err - } - if err := Convert_v1alpha1_DeprecatedControllerConfiguration_To_componentconfig_DeprecatedControllerConfiguration(&in.DeprecatedController, &out.DeprecatedController, s); err != nil { - return err - } - if err := Convert_v1alpha1_EndpointControllerConfiguration_To_componentconfig_EndpointControllerConfiguration(&in.EndpointController, &out.EndpointController, s); err != nil { - return err - } - if err := Convert_v1alpha1_GarbageCollectorControllerConfiguration_To_componentconfig_GarbageCollectorControllerConfiguration(&in.GarbageCollectorController, &out.GarbageCollectorController, s); err != nil { - return err - } - if err := Convert_v1alpha1_HPAControllerConfiguration_To_componentconfig_HPAControllerConfiguration(&in.HPAController, &out.HPAController, s); err != nil { - return err - } - if err := Convert_v1alpha1_JobControllerConfiguration_To_componentconfig_JobControllerConfiguration(&in.JobController, &out.JobController, s); err != nil { - return err - } - if err := Convert_v1alpha1_NamespaceControllerConfiguration_To_componentconfig_NamespaceControllerConfiguration(&in.NamespaceController, &out.NamespaceController, s); err != nil { - return err - } - if err := Convert_v1alpha1_NodeIPAMControllerConfiguration_To_componentconfig_NodeIPAMControllerConfiguration(&in.NodeIPAMController, &out.NodeIPAMController, s); err != nil { - return err - } - if err := Convert_v1alpha1_NodeLifecycleControllerConfiguration_To_componentconfig_NodeLifecycleControllerConfiguration(&in.NodeLifecycleController, &out.NodeLifecycleController, s); err != nil { - return err - } - if err := Convert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_componentconfig_PersistentVolumeBinderControllerConfiguration(&in.PersistentVolumeBinderController, &out.PersistentVolumeBinderController, s); err != nil { - return err - } - if err := Convert_v1alpha1_PodGCControllerConfiguration_To_componentconfig_PodGCControllerConfiguration(&in.PodGCController, &out.PodGCController, s); err != nil { - return err - } - if err := Convert_v1alpha1_ReplicaSetControllerConfiguration_To_componentconfig_ReplicaSetControllerConfiguration(&in.ReplicaSetController, &out.ReplicaSetController, s); err != nil { - return err - } - if err := Convert_v1alpha1_ReplicationControllerConfiguration_To_componentconfig_ReplicationControllerConfiguration(&in.ReplicationController, &out.ReplicationController, s); err != nil { - return err - } - if err := Convert_v1alpha1_ResourceQuotaControllerConfiguration_To_componentconfig_ResourceQuotaControllerConfiguration(&in.ResourceQuotaController, &out.ResourceQuotaController, s); err != nil { - return err - } - if err := Convert_v1alpha1_SAControllerConfiguration_To_componentconfig_SAControllerConfiguration(&in.SAController, &out.SAController, s); err != nil { - return err - } - if err := Convert_v1alpha1_ServiceControllerConfiguration_To_componentconfig_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil { - return err - } - return nil -} - -// Convert_v1alpha1_KubeControllerManagerConfiguration_To_componentconfig_KubeControllerManagerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_KubeControllerManagerConfiguration_To_componentconfig_KubeControllerManagerConfiguration(in *KubeControllerManagerConfiguration, out *componentconfig.KubeControllerManagerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_KubeControllerManagerConfiguration_To_componentconfig_KubeControllerManagerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_KubeControllerManagerConfiguration_To_v1alpha1_KubeControllerManagerConfiguration(in *componentconfig.KubeControllerManagerConfiguration, out *KubeControllerManagerConfiguration, s conversion.Scope) error { - if err := Convert_componentconfig_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(&in.Generic, &out.Generic, s); err != nil { - return err - } - if err := Convert_componentconfig_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(&in.KubeCloudShared, &out.KubeCloudShared, s); err != nil { - return err - } - if err := Convert_componentconfig_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration(&in.AttachDetachController, &out.AttachDetachController, s); err != nil { - return err - } - if err := Convert_componentconfig_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(&in.CSRSigningController, &out.CSRSigningController, s); err != nil { - return err - } - if err := Convert_componentconfig_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(&in.DaemonSetController, &out.DaemonSetController, s); err != nil { - return err - } - if err := Convert_componentconfig_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(&in.DeploymentController, &out.DeploymentController, s); err != nil { - return err - } - if err := Convert_componentconfig_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(&in.DeprecatedController, &out.DeprecatedController, s); err != nil { - return err - } - if err := Convert_componentconfig_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(&in.EndpointController, &out.EndpointController, s); err != nil { - return err - } - if err := Convert_componentconfig_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration(&in.GarbageCollectorController, &out.GarbageCollectorController, s); err != nil { - return err - } - if err := Convert_componentconfig_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration(&in.HPAController, &out.HPAController, s); err != nil { - return err - } - if err := Convert_componentconfig_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration(&in.JobController, &out.JobController, s); err != nil { - return err - } - if err := Convert_componentconfig_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration(&in.NamespaceController, &out.NamespaceController, s); err != nil { - return err - } - if err := Convert_componentconfig_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration(&in.NodeIPAMController, &out.NodeIPAMController, s); err != nil { - return err - } - if err := Convert_componentconfig_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration(&in.NodeLifecycleController, &out.NodeLifecycleController, s); err != nil { - return err - } - if err := Convert_componentconfig_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration(&in.PersistentVolumeBinderController, &out.PersistentVolumeBinderController, s); err != nil { - return err - } - if err := Convert_componentconfig_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration(&in.PodGCController, &out.PodGCController, s); err != nil { - return err - } - if err := Convert_componentconfig_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration(&in.ReplicaSetController, &out.ReplicaSetController, s); err != nil { - return err - } - if err := Convert_componentconfig_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration(&in.ReplicationController, &out.ReplicationController, s); err != nil { - return err - } - if err := Convert_componentconfig_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration(&in.ResourceQuotaController, &out.ResourceQuotaController, s); err != nil { - return err - } - if err := Convert_componentconfig_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration(&in.SAController, &out.SAController, s); err != nil { - return err - } - if err := Convert_componentconfig_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil { - return err - } - return nil -} - -// Convert_componentconfig_KubeControllerManagerConfiguration_To_v1alpha1_KubeControllerManagerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_KubeControllerManagerConfiguration_To_v1alpha1_KubeControllerManagerConfiguration(in *componentconfig.KubeControllerManagerConfiguration, out *KubeControllerManagerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_KubeControllerManagerConfiguration_To_v1alpha1_KubeControllerManagerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_NamespaceControllerConfiguration_To_componentconfig_NamespaceControllerConfiguration(in *NamespaceControllerConfiguration, out *componentconfig.NamespaceControllerConfiguration, s conversion.Scope) error { - out.NamespaceSyncPeriod = in.NamespaceSyncPeriod - out.ConcurrentNamespaceSyncs = in.ConcurrentNamespaceSyncs - return nil -} - -// Convert_v1alpha1_NamespaceControllerConfiguration_To_componentconfig_NamespaceControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_NamespaceControllerConfiguration_To_componentconfig_NamespaceControllerConfiguration(in *NamespaceControllerConfiguration, out *componentconfig.NamespaceControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_NamespaceControllerConfiguration_To_componentconfig_NamespaceControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration(in *componentconfig.NamespaceControllerConfiguration, out *NamespaceControllerConfiguration, s conversion.Scope) error { - out.NamespaceSyncPeriod = in.NamespaceSyncPeriod - out.ConcurrentNamespaceSyncs = in.ConcurrentNamespaceSyncs - return nil -} - -// Convert_componentconfig_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration(in *componentconfig.NamespaceControllerConfiguration, out *NamespaceControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_NodeIPAMControllerConfiguration_To_componentconfig_NodeIPAMControllerConfiguration(in *NodeIPAMControllerConfiguration, out *componentconfig.NodeIPAMControllerConfiguration, s conversion.Scope) error { - out.ServiceCIDR = in.ServiceCIDR - out.NodeCIDRMaskSize = in.NodeCIDRMaskSize - return nil -} - -// Convert_v1alpha1_NodeIPAMControllerConfiguration_To_componentconfig_NodeIPAMControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_NodeIPAMControllerConfiguration_To_componentconfig_NodeIPAMControllerConfiguration(in *NodeIPAMControllerConfiguration, out *componentconfig.NodeIPAMControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_NodeIPAMControllerConfiguration_To_componentconfig_NodeIPAMControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration(in *componentconfig.NodeIPAMControllerConfiguration, out *NodeIPAMControllerConfiguration, s conversion.Scope) error { - out.ServiceCIDR = in.ServiceCIDR - out.NodeCIDRMaskSize = in.NodeCIDRMaskSize - return nil -} - -// Convert_componentconfig_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration(in *componentconfig.NodeIPAMControllerConfiguration, out *NodeIPAMControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_NodeLifecycleControllerConfiguration_To_componentconfig_NodeLifecycleControllerConfiguration(in *NodeLifecycleControllerConfiguration, out *componentconfig.NodeLifecycleControllerConfiguration, s conversion.Scope) error { - if err := v1.Convert_Pointer_bool_To_bool(&in.EnableTaintManager, &out.EnableTaintManager, s); err != nil { - return err - } - out.NodeEvictionRate = in.NodeEvictionRate - out.SecondaryNodeEvictionRate = in.SecondaryNodeEvictionRate - out.NodeStartupGracePeriod = in.NodeStartupGracePeriod - out.NodeMonitorGracePeriod = in.NodeMonitorGracePeriod - out.PodEvictionTimeout = in.PodEvictionTimeout - out.LargeClusterSizeThreshold = in.LargeClusterSizeThreshold - out.UnhealthyZoneThreshold = in.UnhealthyZoneThreshold - return nil -} - -// Convert_v1alpha1_NodeLifecycleControllerConfiguration_To_componentconfig_NodeLifecycleControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_NodeLifecycleControllerConfiguration_To_componentconfig_NodeLifecycleControllerConfiguration(in *NodeLifecycleControllerConfiguration, out *componentconfig.NodeLifecycleControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_NodeLifecycleControllerConfiguration_To_componentconfig_NodeLifecycleControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration(in *componentconfig.NodeLifecycleControllerConfiguration, out *NodeLifecycleControllerConfiguration, s conversion.Scope) error { - if err := v1.Convert_bool_To_Pointer_bool(&in.EnableTaintManager, &out.EnableTaintManager, s); err != nil { - return err - } - out.NodeEvictionRate = in.NodeEvictionRate - out.SecondaryNodeEvictionRate = in.SecondaryNodeEvictionRate - out.NodeStartupGracePeriod = in.NodeStartupGracePeriod - out.NodeMonitorGracePeriod = in.NodeMonitorGracePeriod - out.PodEvictionTimeout = in.PodEvictionTimeout - out.LargeClusterSizeThreshold = in.LargeClusterSizeThreshold - out.UnhealthyZoneThreshold = in.UnhealthyZoneThreshold - return nil -} - -// Convert_componentconfig_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration(in *componentconfig.NodeLifecycleControllerConfiguration, out *NodeLifecycleControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_componentconfig_PersistentVolumeBinderControllerConfiguration(in *PersistentVolumeBinderControllerConfiguration, out *componentconfig.PersistentVolumeBinderControllerConfiguration, s conversion.Scope) error { - out.PVClaimBinderSyncPeriod = in.PVClaimBinderSyncPeriod - if err := Convert_v1alpha1_VolumeConfiguration_To_componentconfig_VolumeConfiguration(&in.VolumeConfiguration, &out.VolumeConfiguration, s); err != nil { - return err - } - return nil -} - -// Convert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_componentconfig_PersistentVolumeBinderControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_componentconfig_PersistentVolumeBinderControllerConfiguration(in *PersistentVolumeBinderControllerConfiguration, out *componentconfig.PersistentVolumeBinderControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_componentconfig_PersistentVolumeBinderControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration(in *componentconfig.PersistentVolumeBinderControllerConfiguration, out *PersistentVolumeBinderControllerConfiguration, s conversion.Scope) error { - out.PVClaimBinderSyncPeriod = in.PVClaimBinderSyncPeriod - if err := Convert_componentconfig_VolumeConfiguration_To_v1alpha1_VolumeConfiguration(&in.VolumeConfiguration, &out.VolumeConfiguration, s); err != nil { - return err - } - return nil -} - -// Convert_componentconfig_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration(in *componentconfig.PersistentVolumeBinderControllerConfiguration, out *PersistentVolumeBinderControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_componentconfig_PersistentVolumeRecyclerConfiguration(in *PersistentVolumeRecyclerConfiguration, out *componentconfig.PersistentVolumeRecyclerConfiguration, s conversion.Scope) error { - out.MaximumRetry = in.MaximumRetry - out.MinimumTimeoutNFS = in.MinimumTimeoutNFS - out.PodTemplateFilePathNFS = in.PodTemplateFilePathNFS - out.IncrementTimeoutNFS = in.IncrementTimeoutNFS - out.PodTemplateFilePathHostPath = in.PodTemplateFilePathHostPath - out.MinimumTimeoutHostPath = in.MinimumTimeoutHostPath - out.IncrementTimeoutHostPath = in.IncrementTimeoutHostPath - return nil -} - -// Convert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_componentconfig_PersistentVolumeRecyclerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_componentconfig_PersistentVolumeRecyclerConfiguration(in *PersistentVolumeRecyclerConfiguration, out *componentconfig.PersistentVolumeRecyclerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_componentconfig_PersistentVolumeRecyclerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration(in *componentconfig.PersistentVolumeRecyclerConfiguration, out *PersistentVolumeRecyclerConfiguration, s conversion.Scope) error { - out.MaximumRetry = in.MaximumRetry - out.MinimumTimeoutNFS = in.MinimumTimeoutNFS - out.PodTemplateFilePathNFS = in.PodTemplateFilePathNFS - out.IncrementTimeoutNFS = in.IncrementTimeoutNFS - out.PodTemplateFilePathHostPath = in.PodTemplateFilePathHostPath - out.MinimumTimeoutHostPath = in.MinimumTimeoutHostPath - out.IncrementTimeoutHostPath = in.IncrementTimeoutHostPath - return nil -} - -// Convert_componentconfig_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration(in *componentconfig.PersistentVolumeRecyclerConfiguration, out *PersistentVolumeRecyclerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_PodGCControllerConfiguration_To_componentconfig_PodGCControllerConfiguration(in *PodGCControllerConfiguration, out *componentconfig.PodGCControllerConfiguration, s conversion.Scope) error { - out.TerminatedPodGCThreshold = in.TerminatedPodGCThreshold - return nil -} - -// Convert_v1alpha1_PodGCControllerConfiguration_To_componentconfig_PodGCControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_PodGCControllerConfiguration_To_componentconfig_PodGCControllerConfiguration(in *PodGCControllerConfiguration, out *componentconfig.PodGCControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_PodGCControllerConfiguration_To_componentconfig_PodGCControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration(in *componentconfig.PodGCControllerConfiguration, out *PodGCControllerConfiguration, s conversion.Scope) error { - out.TerminatedPodGCThreshold = in.TerminatedPodGCThreshold - return nil -} - -// Convert_componentconfig_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration(in *componentconfig.PodGCControllerConfiguration, out *PodGCControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_ReplicaSetControllerConfiguration_To_componentconfig_ReplicaSetControllerConfiguration(in *ReplicaSetControllerConfiguration, out *componentconfig.ReplicaSetControllerConfiguration, s conversion.Scope) error { - out.ConcurrentRSSyncs = in.ConcurrentRSSyncs - return nil -} - -// Convert_v1alpha1_ReplicaSetControllerConfiguration_To_componentconfig_ReplicaSetControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_ReplicaSetControllerConfiguration_To_componentconfig_ReplicaSetControllerConfiguration(in *ReplicaSetControllerConfiguration, out *componentconfig.ReplicaSetControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_ReplicaSetControllerConfiguration_To_componentconfig_ReplicaSetControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration(in *componentconfig.ReplicaSetControllerConfiguration, out *ReplicaSetControllerConfiguration, s conversion.Scope) error { - out.ConcurrentRSSyncs = in.ConcurrentRSSyncs - return nil -} - -// Convert_componentconfig_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration(in *componentconfig.ReplicaSetControllerConfiguration, out *ReplicaSetControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_ReplicationControllerConfiguration_To_componentconfig_ReplicationControllerConfiguration(in *ReplicationControllerConfiguration, out *componentconfig.ReplicationControllerConfiguration, s conversion.Scope) error { - out.ConcurrentRCSyncs = in.ConcurrentRCSyncs - return nil -} - -// Convert_v1alpha1_ReplicationControllerConfiguration_To_componentconfig_ReplicationControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_ReplicationControllerConfiguration_To_componentconfig_ReplicationControllerConfiguration(in *ReplicationControllerConfiguration, out *componentconfig.ReplicationControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_ReplicationControllerConfiguration_To_componentconfig_ReplicationControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration(in *componentconfig.ReplicationControllerConfiguration, out *ReplicationControllerConfiguration, s conversion.Scope) error { - out.ConcurrentRCSyncs = in.ConcurrentRCSyncs - return nil -} - -// Convert_componentconfig_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration(in *componentconfig.ReplicationControllerConfiguration, out *ReplicationControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_ResourceQuotaControllerConfiguration_To_componentconfig_ResourceQuotaControllerConfiguration(in *ResourceQuotaControllerConfiguration, out *componentconfig.ResourceQuotaControllerConfiguration, s conversion.Scope) error { - out.ResourceQuotaSyncPeriod = in.ResourceQuotaSyncPeriod - out.ConcurrentResourceQuotaSyncs = in.ConcurrentResourceQuotaSyncs - return nil -} - -// Convert_v1alpha1_ResourceQuotaControllerConfiguration_To_componentconfig_ResourceQuotaControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_ResourceQuotaControllerConfiguration_To_componentconfig_ResourceQuotaControllerConfiguration(in *ResourceQuotaControllerConfiguration, out *componentconfig.ResourceQuotaControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_ResourceQuotaControllerConfiguration_To_componentconfig_ResourceQuotaControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration(in *componentconfig.ResourceQuotaControllerConfiguration, out *ResourceQuotaControllerConfiguration, s conversion.Scope) error { - out.ResourceQuotaSyncPeriod = in.ResourceQuotaSyncPeriod - out.ConcurrentResourceQuotaSyncs = in.ConcurrentResourceQuotaSyncs - return nil -} - -// Convert_componentconfig_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration(in *componentconfig.ResourceQuotaControllerConfiguration, out *ResourceQuotaControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_SAControllerConfiguration_To_componentconfig_SAControllerConfiguration(in *SAControllerConfiguration, out *componentconfig.SAControllerConfiguration, s conversion.Scope) error { - out.ServiceAccountKeyFile = in.ServiceAccountKeyFile - out.ConcurrentSATokenSyncs = in.ConcurrentSATokenSyncs - out.RootCAFile = in.RootCAFile - return nil -} - -// Convert_v1alpha1_SAControllerConfiguration_To_componentconfig_SAControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_SAControllerConfiguration_To_componentconfig_SAControllerConfiguration(in *SAControllerConfiguration, out *componentconfig.SAControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_SAControllerConfiguration_To_componentconfig_SAControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration(in *componentconfig.SAControllerConfiguration, out *SAControllerConfiguration, s conversion.Scope) error { - out.ServiceAccountKeyFile = in.ServiceAccountKeyFile - out.ConcurrentSATokenSyncs = in.ConcurrentSATokenSyncs - out.RootCAFile = in.RootCAFile - return nil -} - -// Convert_componentconfig_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration(in *componentconfig.SAControllerConfiguration, out *SAControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_ServiceControllerConfiguration_To_componentconfig_ServiceControllerConfiguration(in *ServiceControllerConfiguration, out *componentconfig.ServiceControllerConfiguration, s conversion.Scope) error { - out.ConcurrentServiceSyncs = in.ConcurrentServiceSyncs - return nil -} - -// Convert_v1alpha1_ServiceControllerConfiguration_To_componentconfig_ServiceControllerConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_ServiceControllerConfiguration_To_componentconfig_ServiceControllerConfiguration(in *ServiceControllerConfiguration, out *componentconfig.ServiceControllerConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_ServiceControllerConfiguration_To_componentconfig_ServiceControllerConfiguration(in, out, s) -} - -func autoConvert_componentconfig_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(in *componentconfig.ServiceControllerConfiguration, out *ServiceControllerConfiguration, s conversion.Scope) error { - out.ConcurrentServiceSyncs = in.ConcurrentServiceSyncs - return nil -} - -// Convert_componentconfig_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration is an autogenerated conversion function. -func Convert_componentconfig_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(in *componentconfig.ServiceControllerConfiguration, out *ServiceControllerConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(in, out, s) -} - -func autoConvert_v1alpha1_VolumeConfiguration_To_componentconfig_VolumeConfiguration(in *VolumeConfiguration, out *componentconfig.VolumeConfiguration, s conversion.Scope) error { - if err := v1.Convert_Pointer_bool_To_bool(&in.EnableHostPathProvisioning, &out.EnableHostPathProvisioning, s); err != nil { - return err - } - if err := v1.Convert_Pointer_bool_To_bool(&in.EnableDynamicProvisioning, &out.EnableDynamicProvisioning, s); err != nil { - return err - } - if err := Convert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_componentconfig_PersistentVolumeRecyclerConfiguration(&in.PersistentVolumeRecyclerConfiguration, &out.PersistentVolumeRecyclerConfiguration, s); err != nil { - return err - } - out.FlexVolumePluginDir = in.FlexVolumePluginDir - return nil -} - -// Convert_v1alpha1_VolumeConfiguration_To_componentconfig_VolumeConfiguration is an autogenerated conversion function. -func Convert_v1alpha1_VolumeConfiguration_To_componentconfig_VolumeConfiguration(in *VolumeConfiguration, out *componentconfig.VolumeConfiguration, s conversion.Scope) error { - return autoConvert_v1alpha1_VolumeConfiguration_To_componentconfig_VolumeConfiguration(in, out, s) -} - -func autoConvert_componentconfig_VolumeConfiguration_To_v1alpha1_VolumeConfiguration(in *componentconfig.VolumeConfiguration, out *VolumeConfiguration, s conversion.Scope) error { - if err := v1.Convert_bool_To_Pointer_bool(&in.EnableHostPathProvisioning, &out.EnableHostPathProvisioning, s); err != nil { - return err - } - if err := v1.Convert_bool_To_Pointer_bool(&in.EnableDynamicProvisioning, &out.EnableDynamicProvisioning, s); err != nil { - return err - } - if err := Convert_componentconfig_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration(&in.PersistentVolumeRecyclerConfiguration, &out.PersistentVolumeRecyclerConfiguration, s); err != nil { - return err - } - out.FlexVolumePluginDir = in.FlexVolumePluginDir - return nil -} - -// Convert_componentconfig_VolumeConfiguration_To_v1alpha1_VolumeConfiguration is an autogenerated conversion function. -func Convert_componentconfig_VolumeConfiguration_To_v1alpha1_VolumeConfiguration(in *componentconfig.VolumeConfiguration, out *VolumeConfiguration, s conversion.Scope) error { - return autoConvert_componentconfig_VolumeConfiguration_To_v1alpha1_VolumeConfiguration(in, out, s) -} diff --git a/pkg/apis/componentconfig/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/componentconfig/v1alpha1/zz_generated.deepcopy.go index 83e233ebdaf..f7ffa4e7b66 100644 --- a/pkg/apis/componentconfig/v1alpha1/zz_generated.deepcopy.go +++ b/pkg/apis/componentconfig/v1alpha1/zz_generated.deepcopy.go @@ -24,40 +24,6 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AttachDetachControllerConfiguration) DeepCopyInto(out *AttachDetachControllerConfiguration) { - *out = *in - out.ReconcilerSyncLoopPeriod = in.ReconcilerSyncLoopPeriod - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachDetachControllerConfiguration. -func (in *AttachDetachControllerConfiguration) DeepCopy() *AttachDetachControllerConfiguration { - if in == nil { - return nil - } - out := new(AttachDetachControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CSRSigningControllerConfiguration) DeepCopyInto(out *CSRSigningControllerConfiguration) { - *out = *in - out.ClusterSigningDuration = in.ClusterSigningDuration - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSRSigningControllerConfiguration. -func (in *CSRSigningControllerConfiguration) DeepCopy() *CSRSigningControllerConfiguration { - if in == nil { - return nil - } - out := new(CSRSigningControllerConfiguration) - in.DeepCopyInto(out) - return out -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CloudControllerManagerConfiguration) DeepCopyInto(out *CloudControllerManagerConfiguration) { *out = *in @@ -86,481 +52,3 @@ func (in *CloudControllerManagerConfiguration) DeepCopyObject() runtime.Object { } return nil } - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CloudProviderConfiguration) DeepCopyInto(out *CloudProviderConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProviderConfiguration. -func (in *CloudProviderConfiguration) DeepCopy() *CloudProviderConfiguration { - if in == nil { - return nil - } - out := new(CloudProviderConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DaemonSetControllerConfiguration) DeepCopyInto(out *DaemonSetControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DaemonSetControllerConfiguration. -func (in *DaemonSetControllerConfiguration) DeepCopy() *DaemonSetControllerConfiguration { - if in == nil { - return nil - } - out := new(DaemonSetControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DeploymentControllerConfiguration) DeepCopyInto(out *DeploymentControllerConfiguration) { - *out = *in - out.DeploymentControllerSyncPeriod = in.DeploymentControllerSyncPeriod - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentControllerConfiguration. -func (in *DeploymentControllerConfiguration) DeepCopy() *DeploymentControllerConfiguration { - if in == nil { - return nil - } - out := new(DeploymentControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DeprecatedControllerConfiguration) DeepCopyInto(out *DeprecatedControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeprecatedControllerConfiguration. -func (in *DeprecatedControllerConfiguration) DeepCopy() *DeprecatedControllerConfiguration { - if in == nil { - return nil - } - out := new(DeprecatedControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EndpointControllerConfiguration) DeepCopyInto(out *EndpointControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointControllerConfiguration. -func (in *EndpointControllerConfiguration) DeepCopy() *EndpointControllerConfiguration { - if in == nil { - return nil - } - out := new(EndpointControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GarbageCollectorControllerConfiguration) DeepCopyInto(out *GarbageCollectorControllerConfiguration) { - *out = *in - if in.EnableGarbageCollector != nil { - in, out := &in.EnableGarbageCollector, &out.EnableGarbageCollector - *out = new(bool) - **out = **in - } - if in.GCIgnoredResources != nil { - in, out := &in.GCIgnoredResources, &out.GCIgnoredResources - *out = make([]GroupResource, len(*in)) - copy(*out, *in) - } - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GarbageCollectorControllerConfiguration. -func (in *GarbageCollectorControllerConfiguration) DeepCopy() *GarbageCollectorControllerConfiguration { - if in == nil { - return nil - } - out := new(GarbageCollectorControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GenericControllerManagerConfiguration) DeepCopyInto(out *GenericControllerManagerConfiguration) { - *out = *in - out.MinResyncPeriod = in.MinResyncPeriod - out.ClientConnection = in.ClientConnection - out.ControllerStartInterval = in.ControllerStartInterval - in.LeaderElection.DeepCopyInto(&out.LeaderElection) - if in.Controllers != nil { - in, out := &in.Controllers, &out.Controllers - *out = make([]string, len(*in)) - copy(*out, *in) - } - out.Debugging = in.Debugging - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericControllerManagerConfiguration. -func (in *GenericControllerManagerConfiguration) DeepCopy() *GenericControllerManagerConfiguration { - if in == nil { - return nil - } - out := new(GenericControllerManagerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GroupResource) DeepCopyInto(out *GroupResource) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupResource. -func (in *GroupResource) DeepCopy() *GroupResource { - if in == nil { - return nil - } - out := new(GroupResource) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HPAControllerConfiguration) DeepCopyInto(out *HPAControllerConfiguration) { - *out = *in - out.HorizontalPodAutoscalerSyncPeriod = in.HorizontalPodAutoscalerSyncPeriod - out.HorizontalPodAutoscalerUpscaleForbiddenWindow = in.HorizontalPodAutoscalerUpscaleForbiddenWindow - out.HorizontalPodAutoscalerDownscaleStabilizationWindow = in.HorizontalPodAutoscalerDownscaleStabilizationWindow - out.HorizontalPodAutoscalerDownscaleForbiddenWindow = in.HorizontalPodAutoscalerDownscaleForbiddenWindow - if in.HorizontalPodAutoscalerUseRESTClients != nil { - in, out := &in.HorizontalPodAutoscalerUseRESTClients, &out.HorizontalPodAutoscalerUseRESTClients - *out = new(bool) - **out = **in - } - out.HorizontalPodAutoscalerCPUInitializationPeriod = in.HorizontalPodAutoscalerCPUInitializationPeriod - out.HorizontalPodAutoscalerInitialReadinessDelay = in.HorizontalPodAutoscalerInitialReadinessDelay - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPAControllerConfiguration. -func (in *HPAControllerConfiguration) DeepCopy() *HPAControllerConfiguration { - if in == nil { - return nil - } - out := new(HPAControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *JobControllerConfiguration) DeepCopyInto(out *JobControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobControllerConfiguration. -func (in *JobControllerConfiguration) DeepCopy() *JobControllerConfiguration { - if in == nil { - return nil - } - out := new(JobControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KubeCloudSharedConfiguration) DeepCopyInto(out *KubeCloudSharedConfiguration) { - *out = *in - out.CloudProvider = in.CloudProvider - out.RouteReconciliationPeriod = in.RouteReconciliationPeriod - out.NodeMonitorPeriod = in.NodeMonitorPeriod - if in.ConfigureCloudRoutes != nil { - in, out := &in.ConfigureCloudRoutes, &out.ConfigureCloudRoutes - *out = new(bool) - **out = **in - } - out.NodeSyncPeriod = in.NodeSyncPeriod - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeCloudSharedConfiguration. -func (in *KubeCloudSharedConfiguration) DeepCopy() *KubeCloudSharedConfiguration { - if in == nil { - return nil - } - out := new(KubeCloudSharedConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KubeControllerManagerConfiguration) DeepCopyInto(out *KubeControllerManagerConfiguration) { - *out = *in - out.TypeMeta = in.TypeMeta - in.Generic.DeepCopyInto(&out.Generic) - in.KubeCloudShared.DeepCopyInto(&out.KubeCloudShared) - out.AttachDetachController = in.AttachDetachController - out.CSRSigningController = in.CSRSigningController - out.DaemonSetController = in.DaemonSetController - out.DeploymentController = in.DeploymentController - out.DeprecatedController = in.DeprecatedController - out.EndpointController = in.EndpointController - in.GarbageCollectorController.DeepCopyInto(&out.GarbageCollectorController) - in.HPAController.DeepCopyInto(&out.HPAController) - out.JobController = in.JobController - out.NamespaceController = in.NamespaceController - out.NodeIPAMController = in.NodeIPAMController - in.NodeLifecycleController.DeepCopyInto(&out.NodeLifecycleController) - in.PersistentVolumeBinderController.DeepCopyInto(&out.PersistentVolumeBinderController) - out.PodGCController = in.PodGCController - out.ReplicaSetController = in.ReplicaSetController - out.ReplicationController = in.ReplicationController - out.ResourceQuotaController = in.ResourceQuotaController - out.SAController = in.SAController - out.ServiceController = in.ServiceController - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeControllerManagerConfiguration. -func (in *KubeControllerManagerConfiguration) DeepCopy() *KubeControllerManagerConfiguration { - if in == nil { - return nil - } - out := new(KubeControllerManagerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *KubeControllerManagerConfiguration) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NamespaceControllerConfiguration) DeepCopyInto(out *NamespaceControllerConfiguration) { - *out = *in - out.NamespaceSyncPeriod = in.NamespaceSyncPeriod - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceControllerConfiguration. -func (in *NamespaceControllerConfiguration) DeepCopy() *NamespaceControllerConfiguration { - if in == nil { - return nil - } - out := new(NamespaceControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NodeIPAMControllerConfiguration) DeepCopyInto(out *NodeIPAMControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeIPAMControllerConfiguration. -func (in *NodeIPAMControllerConfiguration) DeepCopy() *NodeIPAMControllerConfiguration { - if in == nil { - return nil - } - out := new(NodeIPAMControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NodeLifecycleControllerConfiguration) DeepCopyInto(out *NodeLifecycleControllerConfiguration) { - *out = *in - if in.EnableTaintManager != nil { - in, out := &in.EnableTaintManager, &out.EnableTaintManager - *out = new(bool) - **out = **in - } - out.NodeStartupGracePeriod = in.NodeStartupGracePeriod - out.NodeMonitorGracePeriod = in.NodeMonitorGracePeriod - out.PodEvictionTimeout = in.PodEvictionTimeout - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeLifecycleControllerConfiguration. -func (in *NodeLifecycleControllerConfiguration) DeepCopy() *NodeLifecycleControllerConfiguration { - if in == nil { - return nil - } - out := new(NodeLifecycleControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PersistentVolumeBinderControllerConfiguration) DeepCopyInto(out *PersistentVolumeBinderControllerConfiguration) { - *out = *in - out.PVClaimBinderSyncPeriod = in.PVClaimBinderSyncPeriod - in.VolumeConfiguration.DeepCopyInto(&out.VolumeConfiguration) - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeBinderControllerConfiguration. -func (in *PersistentVolumeBinderControllerConfiguration) DeepCopy() *PersistentVolumeBinderControllerConfiguration { - if in == nil { - return nil - } - out := new(PersistentVolumeBinderControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PersistentVolumeRecyclerConfiguration) DeepCopyInto(out *PersistentVolumeRecyclerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeRecyclerConfiguration. -func (in *PersistentVolumeRecyclerConfiguration) DeepCopy() *PersistentVolumeRecyclerConfiguration { - if in == nil { - return nil - } - out := new(PersistentVolumeRecyclerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PodGCControllerConfiguration) DeepCopyInto(out *PodGCControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodGCControllerConfiguration. -func (in *PodGCControllerConfiguration) DeepCopy() *PodGCControllerConfiguration { - if in == nil { - return nil - } - out := new(PodGCControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ReplicaSetControllerConfiguration) DeepCopyInto(out *ReplicaSetControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicaSetControllerConfiguration. -func (in *ReplicaSetControllerConfiguration) DeepCopy() *ReplicaSetControllerConfiguration { - if in == nil { - return nil - } - out := new(ReplicaSetControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ReplicationControllerConfiguration) DeepCopyInto(out *ReplicationControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerConfiguration. -func (in *ReplicationControllerConfiguration) DeepCopy() *ReplicationControllerConfiguration { - if in == nil { - return nil - } - out := new(ReplicationControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ResourceQuotaControllerConfiguration) DeepCopyInto(out *ResourceQuotaControllerConfiguration) { - *out = *in - out.ResourceQuotaSyncPeriod = in.ResourceQuotaSyncPeriod - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuotaControllerConfiguration. -func (in *ResourceQuotaControllerConfiguration) DeepCopy() *ResourceQuotaControllerConfiguration { - if in == nil { - return nil - } - out := new(ResourceQuotaControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SAControllerConfiguration) DeepCopyInto(out *SAControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SAControllerConfiguration. -func (in *SAControllerConfiguration) DeepCopy() *SAControllerConfiguration { - if in == nil { - return nil - } - out := new(SAControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ServiceControllerConfiguration) DeepCopyInto(out *ServiceControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceControllerConfiguration. -func (in *ServiceControllerConfiguration) DeepCopy() *ServiceControllerConfiguration { - if in == nil { - return nil - } - out := new(ServiceControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *VolumeConfiguration) DeepCopyInto(out *VolumeConfiguration) { - *out = *in - if in.EnableHostPathProvisioning != nil { - in, out := &in.EnableHostPathProvisioning, &out.EnableHostPathProvisioning - *out = new(bool) - **out = **in - } - if in.EnableDynamicProvisioning != nil { - in, out := &in.EnableDynamicProvisioning, &out.EnableDynamicProvisioning - *out = new(bool) - **out = **in - } - out.PersistentVolumeRecyclerConfiguration = in.PersistentVolumeRecyclerConfiguration - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeConfiguration. -func (in *VolumeConfiguration) DeepCopy() *VolumeConfiguration { - if in == nil { - return nil - } - out := new(VolumeConfiguration) - in.DeepCopyInto(out) - return out -} diff --git a/pkg/apis/componentconfig/v1alpha1/zz_generated.defaults.go b/pkg/apis/componentconfig/v1alpha1/zz_generated.defaults.go index 80265615658..8147a5cc81b 100644 --- a/pkg/apis/componentconfig/v1alpha1/zz_generated.defaults.go +++ b/pkg/apis/componentconfig/v1alpha1/zz_generated.defaults.go @@ -22,6 +22,7 @@ package v1alpha1 import ( runtime "k8s.io/apimachinery/pkg/runtime" + configv1alpha1 "k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1" ) // RegisterDefaults adds defaulters functions to the given scheme. @@ -31,22 +32,11 @@ func RegisterDefaults(scheme *runtime.Scheme) error { scheme.AddTypeDefaultingFunc(&CloudControllerManagerConfiguration{}, func(obj interface{}) { SetObjectDefaults_CloudControllerManagerConfiguration(obj.(*CloudControllerManagerConfiguration)) }) - scheme.AddTypeDefaultingFunc(&KubeControllerManagerConfiguration{}, func(obj interface{}) { - SetObjectDefaults_KubeControllerManagerConfiguration(obj.(*KubeControllerManagerConfiguration)) - }) return nil } func SetObjectDefaults_CloudControllerManagerConfiguration(in *CloudControllerManagerConfiguration) { SetDefaults_CloudControllerManagerConfiguration(in) - SetDefaults_GenericControllerManagerConfiguration(&in.Generic) - SetDefaults_KubeCloudSharedConfiguration(&in.KubeCloudShared) -} - -func SetObjectDefaults_KubeControllerManagerConfiguration(in *KubeControllerManagerConfiguration) { - SetDefaults_KubeControllerManagerConfiguration(in) - SetDefaults_GenericControllerManagerConfiguration(&in.Generic) - SetDefaults_KubeCloudSharedConfiguration(&in.KubeCloudShared) - SetDefaults_VolumeConfiguration(&in.PersistentVolumeBinderController.VolumeConfiguration) - SetDefaults_PersistentVolumeRecyclerConfiguration(&in.PersistentVolumeBinderController.VolumeConfiguration.PersistentVolumeRecyclerConfiguration) + configv1alpha1.SetDefaults_KubeCloudSharedConfiguration(&in.KubeCloudShared) + configv1alpha1.SetDefaults_ServiceControllerConfiguration(&in.ServiceController) } diff --git a/pkg/apis/componentconfig/zz_generated.deepcopy.go b/pkg/apis/componentconfig/zz_generated.deepcopy.go index dc2e3aea929..b046a4a1436 100644 --- a/pkg/apis/componentconfig/zz_generated.deepcopy.go +++ b/pkg/apis/componentconfig/zz_generated.deepcopy.go @@ -24,40 +24,6 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AttachDetachControllerConfiguration) DeepCopyInto(out *AttachDetachControllerConfiguration) { - *out = *in - out.ReconcilerSyncLoopPeriod = in.ReconcilerSyncLoopPeriod - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachDetachControllerConfiguration. -func (in *AttachDetachControllerConfiguration) DeepCopy() *AttachDetachControllerConfiguration { - if in == nil { - return nil - } - out := new(AttachDetachControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CSRSigningControllerConfiguration) DeepCopyInto(out *CSRSigningControllerConfiguration) { - *out = *in - out.ClusterSigningDuration = in.ClusterSigningDuration - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSRSigningControllerConfiguration. -func (in *CSRSigningControllerConfiguration) DeepCopy() *CSRSigningControllerConfiguration { - if in == nil { - return nil - } - out := new(CSRSigningControllerConfiguration) - in.DeepCopyInto(out) - return out -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CloudControllerManagerConfiguration) DeepCopyInto(out *CloudControllerManagerConfiguration) { *out = *in @@ -87,172 +53,6 @@ func (in *CloudControllerManagerConfiguration) DeepCopyObject() runtime.Object { return nil } -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CloudProviderConfiguration) DeepCopyInto(out *CloudProviderConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProviderConfiguration. -func (in *CloudProviderConfiguration) DeepCopy() *CloudProviderConfiguration { - if in == nil { - return nil - } - out := new(CloudProviderConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DaemonSetControllerConfiguration) DeepCopyInto(out *DaemonSetControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DaemonSetControllerConfiguration. -func (in *DaemonSetControllerConfiguration) DeepCopy() *DaemonSetControllerConfiguration { - if in == nil { - return nil - } - out := new(DaemonSetControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DeploymentControllerConfiguration) DeepCopyInto(out *DeploymentControllerConfiguration) { - *out = *in - out.DeploymentControllerSyncPeriod = in.DeploymentControllerSyncPeriod - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentControllerConfiguration. -func (in *DeploymentControllerConfiguration) DeepCopy() *DeploymentControllerConfiguration { - if in == nil { - return nil - } - out := new(DeploymentControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DeprecatedControllerConfiguration) DeepCopyInto(out *DeprecatedControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeprecatedControllerConfiguration. -func (in *DeprecatedControllerConfiguration) DeepCopy() *DeprecatedControllerConfiguration { - if in == nil { - return nil - } - out := new(DeprecatedControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EndpointControllerConfiguration) DeepCopyInto(out *EndpointControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointControllerConfiguration. -func (in *EndpointControllerConfiguration) DeepCopy() *EndpointControllerConfiguration { - if in == nil { - return nil - } - out := new(EndpointControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GarbageCollectorControllerConfiguration) DeepCopyInto(out *GarbageCollectorControllerConfiguration) { - *out = *in - if in.GCIgnoredResources != nil { - in, out := &in.GCIgnoredResources, &out.GCIgnoredResources - *out = make([]GroupResource, len(*in)) - copy(*out, *in) - } - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GarbageCollectorControllerConfiguration. -func (in *GarbageCollectorControllerConfiguration) DeepCopy() *GarbageCollectorControllerConfiguration { - if in == nil { - return nil - } - out := new(GarbageCollectorControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GenericControllerManagerConfiguration) DeepCopyInto(out *GenericControllerManagerConfiguration) { - *out = *in - out.MinResyncPeriod = in.MinResyncPeriod - out.ClientConnection = in.ClientConnection - out.ControllerStartInterval = in.ControllerStartInterval - out.LeaderElection = in.LeaderElection - if in.Controllers != nil { - in, out := &in.Controllers, &out.Controllers - *out = make([]string, len(*in)) - copy(*out, *in) - } - out.Debugging = in.Debugging - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericControllerManagerConfiguration. -func (in *GenericControllerManagerConfiguration) DeepCopy() *GenericControllerManagerConfiguration { - if in == nil { - return nil - } - out := new(GenericControllerManagerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GroupResource) DeepCopyInto(out *GroupResource) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupResource. -func (in *GroupResource) DeepCopy() *GroupResource { - if in == nil { - return nil - } - out := new(GroupResource) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HPAControllerConfiguration) DeepCopyInto(out *HPAControllerConfiguration) { - *out = *in - out.HorizontalPodAutoscalerSyncPeriod = in.HorizontalPodAutoscalerSyncPeriod - out.HorizontalPodAutoscalerUpscaleForbiddenWindow = in.HorizontalPodAutoscalerUpscaleForbiddenWindow - out.HorizontalPodAutoscalerDownscaleForbiddenWindow = in.HorizontalPodAutoscalerDownscaleForbiddenWindow - out.HorizontalPodAutoscalerDownscaleStabilizationWindow = in.HorizontalPodAutoscalerDownscaleStabilizationWindow - out.HorizontalPodAutoscalerCPUInitializationPeriod = in.HorizontalPodAutoscalerCPUInitializationPeriod - out.HorizontalPodAutoscalerInitialReadinessDelay = in.HorizontalPodAutoscalerInitialReadinessDelay - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPAControllerConfiguration. -func (in *HPAControllerConfiguration) DeepCopy() *HPAControllerConfiguration { - if in == nil { - return nil - } - out := new(HPAControllerConfiguration) - in.DeepCopyInto(out) - return out -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPPortVar) DeepCopyInto(out *IPPortVar) { *out = *in @@ -295,190 +95,6 @@ func (in *IPVar) DeepCopy() *IPVar { return out } -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *JobControllerConfiguration) DeepCopyInto(out *JobControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobControllerConfiguration. -func (in *JobControllerConfiguration) DeepCopy() *JobControllerConfiguration { - if in == nil { - return nil - } - out := new(JobControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KubeCloudSharedConfiguration) DeepCopyInto(out *KubeCloudSharedConfiguration) { - *out = *in - out.CloudProvider = in.CloudProvider - out.RouteReconciliationPeriod = in.RouteReconciliationPeriod - out.NodeMonitorPeriod = in.NodeMonitorPeriod - out.NodeSyncPeriod = in.NodeSyncPeriod - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeCloudSharedConfiguration. -func (in *KubeCloudSharedConfiguration) DeepCopy() *KubeCloudSharedConfiguration { - if in == nil { - return nil - } - out := new(KubeCloudSharedConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KubeControllerManagerConfiguration) DeepCopyInto(out *KubeControllerManagerConfiguration) { - *out = *in - out.TypeMeta = in.TypeMeta - in.Generic.DeepCopyInto(&out.Generic) - out.KubeCloudShared = in.KubeCloudShared - out.AttachDetachController = in.AttachDetachController - out.CSRSigningController = in.CSRSigningController - out.DaemonSetController = in.DaemonSetController - out.DeploymentController = in.DeploymentController - out.DeprecatedController = in.DeprecatedController - out.EndpointController = in.EndpointController - in.GarbageCollectorController.DeepCopyInto(&out.GarbageCollectorController) - out.HPAController = in.HPAController - out.JobController = in.JobController - out.NamespaceController = in.NamespaceController - out.NodeIPAMController = in.NodeIPAMController - out.NodeLifecycleController = in.NodeLifecycleController - out.PersistentVolumeBinderController = in.PersistentVolumeBinderController - out.PodGCController = in.PodGCController - out.ReplicaSetController = in.ReplicaSetController - out.ReplicationController = in.ReplicationController - out.ResourceQuotaController = in.ResourceQuotaController - out.SAController = in.SAController - out.ServiceController = in.ServiceController - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeControllerManagerConfiguration. -func (in *KubeControllerManagerConfiguration) DeepCopy() *KubeControllerManagerConfiguration { - if in == nil { - return nil - } - out := new(KubeControllerManagerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *KubeControllerManagerConfiguration) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NamespaceControllerConfiguration) DeepCopyInto(out *NamespaceControllerConfiguration) { - *out = *in - out.NamespaceSyncPeriod = in.NamespaceSyncPeriod - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceControllerConfiguration. -func (in *NamespaceControllerConfiguration) DeepCopy() *NamespaceControllerConfiguration { - if in == nil { - return nil - } - out := new(NamespaceControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NodeIPAMControllerConfiguration) DeepCopyInto(out *NodeIPAMControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeIPAMControllerConfiguration. -func (in *NodeIPAMControllerConfiguration) DeepCopy() *NodeIPAMControllerConfiguration { - if in == nil { - return nil - } - out := new(NodeIPAMControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NodeLifecycleControllerConfiguration) DeepCopyInto(out *NodeLifecycleControllerConfiguration) { - *out = *in - out.NodeStartupGracePeriod = in.NodeStartupGracePeriod - out.NodeMonitorGracePeriod = in.NodeMonitorGracePeriod - out.PodEvictionTimeout = in.PodEvictionTimeout - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeLifecycleControllerConfiguration. -func (in *NodeLifecycleControllerConfiguration) DeepCopy() *NodeLifecycleControllerConfiguration { - if in == nil { - return nil - } - out := new(NodeLifecycleControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PersistentVolumeBinderControllerConfiguration) DeepCopyInto(out *PersistentVolumeBinderControllerConfiguration) { - *out = *in - out.PVClaimBinderSyncPeriod = in.PVClaimBinderSyncPeriod - out.VolumeConfiguration = in.VolumeConfiguration - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeBinderControllerConfiguration. -func (in *PersistentVolumeBinderControllerConfiguration) DeepCopy() *PersistentVolumeBinderControllerConfiguration { - if in == nil { - return nil - } - out := new(PersistentVolumeBinderControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PersistentVolumeRecyclerConfiguration) DeepCopyInto(out *PersistentVolumeRecyclerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeRecyclerConfiguration. -func (in *PersistentVolumeRecyclerConfiguration) DeepCopy() *PersistentVolumeRecyclerConfiguration { - if in == nil { - return nil - } - out := new(PersistentVolumeRecyclerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PodGCControllerConfiguration) DeepCopyInto(out *PodGCControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodGCControllerConfiguration. -func (in *PodGCControllerConfiguration) DeepCopy() *PodGCControllerConfiguration { - if in == nil { - return nil - } - out := new(PodGCControllerConfiguration) - in.DeepCopyInto(out) - return out -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PortRangeVar) DeepCopyInto(out *PortRangeVar) { *out = *in @@ -499,101 +115,3 @@ func (in *PortRangeVar) DeepCopy() *PortRangeVar { in.DeepCopyInto(out) return out } - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ReplicaSetControllerConfiguration) DeepCopyInto(out *ReplicaSetControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicaSetControllerConfiguration. -func (in *ReplicaSetControllerConfiguration) DeepCopy() *ReplicaSetControllerConfiguration { - if in == nil { - return nil - } - out := new(ReplicaSetControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ReplicationControllerConfiguration) DeepCopyInto(out *ReplicationControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerConfiguration. -func (in *ReplicationControllerConfiguration) DeepCopy() *ReplicationControllerConfiguration { - if in == nil { - return nil - } - out := new(ReplicationControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ResourceQuotaControllerConfiguration) DeepCopyInto(out *ResourceQuotaControllerConfiguration) { - *out = *in - out.ResourceQuotaSyncPeriod = in.ResourceQuotaSyncPeriod - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuotaControllerConfiguration. -func (in *ResourceQuotaControllerConfiguration) DeepCopy() *ResourceQuotaControllerConfiguration { - if in == nil { - return nil - } - out := new(ResourceQuotaControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SAControllerConfiguration) DeepCopyInto(out *SAControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SAControllerConfiguration. -func (in *SAControllerConfiguration) DeepCopy() *SAControllerConfiguration { - if in == nil { - return nil - } - out := new(SAControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ServiceControllerConfiguration) DeepCopyInto(out *ServiceControllerConfiguration) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceControllerConfiguration. -func (in *ServiceControllerConfiguration) DeepCopy() *ServiceControllerConfiguration { - if in == nil { - return nil - } - out := new(ServiceControllerConfiguration) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *VolumeConfiguration) DeepCopyInto(out *VolumeConfiguration) { - *out = *in - out.PersistentVolumeRecyclerConfiguration = in.PersistentVolumeRecyclerConfiguration - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeConfiguration. -func (in *VolumeConfiguration) DeepCopy() *VolumeConfiguration { - if in == nil { - return nil - } - out := new(VolumeConfiguration) - in.DeepCopyInto(out) - return out -} diff --git a/pkg/controller/BUILD b/pkg/controller/BUILD index 027ec4e6d28..17f4fba639b 100644 --- a/pkg/controller/BUILD +++ b/pkg/controller/BUILD @@ -104,6 +104,7 @@ filegroup( name = "all-srcs", srcs = [ ":package-srcs", + "//pkg/controller/apis/config:all-srcs", "//pkg/controller/bootstrap:all-srcs", "//pkg/controller/certificates:all-srcs", "//pkg/controller/cloud:all-srcs", diff --git a/pkg/controller/apis/config/BUILD b/pkg/controller/apis/config/BUILD new file mode 100644 index 00000000000..928640e3bca --- /dev/null +++ b/pkg/controller/apis/config/BUILD @@ -0,0 +1,38 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library") + +go_library( + name = "go_default_library", + srcs = [ + "doc.go", + "register.go", + "types.go", + "zz_generated.deepcopy.go", + ], + importpath = "k8s.io/kubernetes/pkg/controller/apis/config", + visibility = ["//visibility:public"], + deps = [ + "//staging/src/k8s.io/apimachinery/pkg/apis/config:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library", + "//staging/src/k8s.io/apiserver/pkg/apis/config:go_default_library", + ], +) + +filegroup( + name = "package-srcs", + srcs = glob(["**"]), + tags = ["automanaged"], + visibility = ["//visibility:private"], +) + +filegroup( + name = "all-srcs", + srcs = [ + ":package-srcs", + "//pkg/controller/apis/config/scheme:all-srcs", + "//pkg/controller/apis/config/v1alpha1:all-srcs", + ], + tags = ["automanaged"], + visibility = ["//visibility:public"], +) diff --git a/pkg/controller/apis/config/scheme/BUILD b/pkg/controller/apis/config/scheme/BUILD new file mode 100644 index 00000000000..a5600c311a5 --- /dev/null +++ b/pkg/controller/apis/config/scheme/BUILD @@ -0,0 +1,29 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library") + +go_library( + name = "go_default_library", + srcs = ["scheme.go"], + importpath = "k8s.io/kubernetes/pkg/controller/apis/config/scheme", + visibility = ["//visibility:public"], + deps = [ + "//pkg/controller/apis/config:go_default_library", + "//pkg/controller/apis/config/v1alpha1:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/runtime/serializer:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/util/runtime:go_default_library", + ], +) + +filegroup( + name = "package-srcs", + srcs = glob(["**"]), + tags = ["automanaged"], + visibility = ["//visibility:private"], +) + +filegroup( + name = "all-srcs", + srcs = [":package-srcs"], + tags = ["automanaged"], + visibility = ["//visibility:public"], +) diff --git a/pkg/controller/apis/config/v1alpha1/BUILD b/pkg/controller/apis/config/v1alpha1/BUILD new file mode 100644 index 00000000000..cbb8c94bc09 --- /dev/null +++ b/pkg/controller/apis/config/v1alpha1/BUILD @@ -0,0 +1,52 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "go_default_library", + srcs = [ + "conversion.go", + "defaults.go", + "doc.go", + "register.go", + "zz_generated.conversion.go", + "zz_generated.defaults.go", + ], + importpath = "k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1", + visibility = ["//visibility:public"], + deps = [ + "//pkg/controller/apis/config:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/apis/config/v1alpha1:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/conversion:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library", + "//staging/src/k8s.io/apiserver/pkg/apis/config/v1alpha1:go_default_library", + "//staging/src/k8s.io/kube-controller-manager/config/v1alpha1:go_default_library", + "//vendor/k8s.io/utils/pointer:go_default_library", + ], +) + +go_test( + name = "go_default_test", + srcs = ["defaults_test.go"], + embed = [":go_default_library"], + deps = [ + "//staging/src/k8s.io/api/core/v1:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library", + "//staging/src/k8s.io/kube-controller-manager/config/v1alpha1:go_default_library", + ], +) + +filegroup( + name = "package-srcs", + srcs = glob(["**"]), + tags = ["automanaged"], + visibility = ["//visibility:private"], +) + +filegroup( + name = "all-srcs", + srcs = [":package-srcs"], + tags = ["automanaged"], + visibility = ["//visibility:public"], +) diff --git a/pkg/controller/apis/config/v1alpha1/zz_generated.conversion.go b/pkg/controller/apis/config/v1alpha1/zz_generated.conversion.go new file mode 100644 index 00000000000..70b6319bd09 --- /dev/null +++ b/pkg/controller/apis/config/v1alpha1/zz_generated.conversion.go @@ -0,0 +1,1109 @@ +// +build !ignore_autogenerated + +/* +Copyright The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by conversion-gen. DO NOT EDIT. + +package v1alpha1 + +import ( + unsafe "unsafe" + + apisconfigv1alpha1 "k8s.io/apimachinery/pkg/apis/config/v1alpha1" + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + pkgapisconfigv1alpha1 "k8s.io/apiserver/pkg/apis/config/v1alpha1" + v1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1" + config "k8s.io/kubernetes/pkg/controller/apis/config" +) + +func init() { + localSchemeBuilder.Register(RegisterConversions) +} + +// RegisterConversions adds conversion functions to the given scheme. +// Public to allow building arbitrary schemes. +func RegisterConversions(s *runtime.Scheme) error { + if err := s.AddGeneratedConversionFunc((*v1alpha1.AttachDetachControllerConfiguration)(nil), (*config.AttachDetachControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_AttachDetachControllerConfiguration_To_config_AttachDetachControllerConfiguration(a.(*v1alpha1.AttachDetachControllerConfiguration), b.(*config.AttachDetachControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.AttachDetachControllerConfiguration)(nil), (*v1alpha1.AttachDetachControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration(a.(*config.AttachDetachControllerConfiguration), b.(*v1alpha1.AttachDetachControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.CSRSigningControllerConfiguration)(nil), (*config.CSRSigningControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_CSRSigningControllerConfiguration_To_config_CSRSigningControllerConfiguration(a.(*v1alpha1.CSRSigningControllerConfiguration), b.(*config.CSRSigningControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.CSRSigningControllerConfiguration)(nil), (*v1alpha1.CSRSigningControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(a.(*config.CSRSigningControllerConfiguration), b.(*v1alpha1.CSRSigningControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.CloudProviderConfiguration)(nil), (*config.CloudProviderConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_CloudProviderConfiguration_To_config_CloudProviderConfiguration(a.(*v1alpha1.CloudProviderConfiguration), b.(*config.CloudProviderConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.CloudProviderConfiguration)(nil), (*v1alpha1.CloudProviderConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration(a.(*config.CloudProviderConfiguration), b.(*v1alpha1.CloudProviderConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.DaemonSetControllerConfiguration)(nil), (*config.DaemonSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_DaemonSetControllerConfiguration_To_config_DaemonSetControllerConfiguration(a.(*v1alpha1.DaemonSetControllerConfiguration), b.(*config.DaemonSetControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.DaemonSetControllerConfiguration)(nil), (*v1alpha1.DaemonSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(a.(*config.DaemonSetControllerConfiguration), b.(*v1alpha1.DaemonSetControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.DeploymentControllerConfiguration)(nil), (*config.DeploymentControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration(a.(*v1alpha1.DeploymentControllerConfiguration), b.(*config.DeploymentControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.DeploymentControllerConfiguration)(nil), (*v1alpha1.DeploymentControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(a.(*config.DeploymentControllerConfiguration), b.(*v1alpha1.DeploymentControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.DeprecatedControllerConfiguration)(nil), (*config.DeprecatedControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_DeprecatedControllerConfiguration_To_config_DeprecatedControllerConfiguration(a.(*v1alpha1.DeprecatedControllerConfiguration), b.(*config.DeprecatedControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.DeprecatedControllerConfiguration)(nil), (*v1alpha1.DeprecatedControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(a.(*config.DeprecatedControllerConfiguration), b.(*v1alpha1.DeprecatedControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.EndpointControllerConfiguration)(nil), (*config.EndpointControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_EndpointControllerConfiguration_To_config_EndpointControllerConfiguration(a.(*v1alpha1.EndpointControllerConfiguration), b.(*config.EndpointControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.EndpointControllerConfiguration)(nil), (*v1alpha1.EndpointControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(a.(*config.EndpointControllerConfiguration), b.(*v1alpha1.EndpointControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.GarbageCollectorControllerConfiguration)(nil), (*config.GarbageCollectorControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_GarbageCollectorControllerConfiguration_To_config_GarbageCollectorControllerConfiguration(a.(*v1alpha1.GarbageCollectorControllerConfiguration), b.(*config.GarbageCollectorControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.GarbageCollectorControllerConfiguration)(nil), (*v1alpha1.GarbageCollectorControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration(a.(*config.GarbageCollectorControllerConfiguration), b.(*v1alpha1.GarbageCollectorControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.GenericControllerManagerConfiguration)(nil), (*config.GenericControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_GenericControllerManagerConfiguration_To_config_GenericControllerManagerConfiguration(a.(*v1alpha1.GenericControllerManagerConfiguration), b.(*config.GenericControllerManagerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.GenericControllerManagerConfiguration)(nil), (*v1alpha1.GenericControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(a.(*config.GenericControllerManagerConfiguration), b.(*v1alpha1.GenericControllerManagerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.GroupResource)(nil), (*config.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_GroupResource_To_config_GroupResource(a.(*v1alpha1.GroupResource), b.(*config.GroupResource), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.GroupResource)(nil), (*v1alpha1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_GroupResource_To_v1alpha1_GroupResource(a.(*config.GroupResource), b.(*v1alpha1.GroupResource), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.HPAControllerConfiguration)(nil), (*config.HPAControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_HPAControllerConfiguration_To_config_HPAControllerConfiguration(a.(*v1alpha1.HPAControllerConfiguration), b.(*config.HPAControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.HPAControllerConfiguration)(nil), (*v1alpha1.HPAControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration(a.(*config.HPAControllerConfiguration), b.(*v1alpha1.HPAControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.JobControllerConfiguration)(nil), (*config.JobControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_JobControllerConfiguration_To_config_JobControllerConfiguration(a.(*v1alpha1.JobControllerConfiguration), b.(*config.JobControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.JobControllerConfiguration)(nil), (*v1alpha1.JobControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration(a.(*config.JobControllerConfiguration), b.(*v1alpha1.JobControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.KubeCloudSharedConfiguration)(nil), (*config.KubeCloudSharedConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConfiguration(a.(*v1alpha1.KubeCloudSharedConfiguration), b.(*config.KubeCloudSharedConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.KubeCloudSharedConfiguration)(nil), (*v1alpha1.KubeCloudSharedConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(a.(*config.KubeCloudSharedConfiguration), b.(*v1alpha1.KubeCloudSharedConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.KubeControllerManagerConfiguration)(nil), (*config.KubeControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_KubeControllerManagerConfiguration_To_config_KubeControllerManagerConfiguration(a.(*v1alpha1.KubeControllerManagerConfiguration), b.(*config.KubeControllerManagerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.KubeControllerManagerConfiguration)(nil), (*v1alpha1.KubeControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_KubeControllerManagerConfiguration_To_v1alpha1_KubeControllerManagerConfiguration(a.(*config.KubeControllerManagerConfiguration), b.(*v1alpha1.KubeControllerManagerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.NamespaceControllerConfiguration)(nil), (*config.NamespaceControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_NamespaceControllerConfiguration_To_config_NamespaceControllerConfiguration(a.(*v1alpha1.NamespaceControllerConfiguration), b.(*config.NamespaceControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.NamespaceControllerConfiguration)(nil), (*v1alpha1.NamespaceControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration(a.(*config.NamespaceControllerConfiguration), b.(*v1alpha1.NamespaceControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.NodeIPAMControllerConfiguration)(nil), (*config.NodeIPAMControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_NodeIPAMControllerConfiguration_To_config_NodeIPAMControllerConfiguration(a.(*v1alpha1.NodeIPAMControllerConfiguration), b.(*config.NodeIPAMControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.NodeIPAMControllerConfiguration)(nil), (*v1alpha1.NodeIPAMControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration(a.(*config.NodeIPAMControllerConfiguration), b.(*v1alpha1.NodeIPAMControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.NodeLifecycleControllerConfiguration)(nil), (*config.NodeLifecycleControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_NodeLifecycleControllerConfiguration_To_config_NodeLifecycleControllerConfiguration(a.(*v1alpha1.NodeLifecycleControllerConfiguration), b.(*config.NodeLifecycleControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.NodeLifecycleControllerConfiguration)(nil), (*v1alpha1.NodeLifecycleControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration(a.(*config.NodeLifecycleControllerConfiguration), b.(*v1alpha1.NodeLifecycleControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.PersistentVolumeBinderControllerConfiguration)(nil), (*config.PersistentVolumeBinderControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_config_PersistentVolumeBinderControllerConfiguration(a.(*v1alpha1.PersistentVolumeBinderControllerConfiguration), b.(*config.PersistentVolumeBinderControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.PersistentVolumeBinderControllerConfiguration)(nil), (*v1alpha1.PersistentVolumeBinderControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration(a.(*config.PersistentVolumeBinderControllerConfiguration), b.(*v1alpha1.PersistentVolumeBinderControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.PersistentVolumeRecyclerConfiguration)(nil), (*config.PersistentVolumeRecyclerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_config_PersistentVolumeRecyclerConfiguration(a.(*v1alpha1.PersistentVolumeRecyclerConfiguration), b.(*config.PersistentVolumeRecyclerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.PersistentVolumeRecyclerConfiguration)(nil), (*v1alpha1.PersistentVolumeRecyclerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration(a.(*config.PersistentVolumeRecyclerConfiguration), b.(*v1alpha1.PersistentVolumeRecyclerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.PodGCControllerConfiguration)(nil), (*config.PodGCControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_PodGCControllerConfiguration_To_config_PodGCControllerConfiguration(a.(*v1alpha1.PodGCControllerConfiguration), b.(*config.PodGCControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.PodGCControllerConfiguration)(nil), (*v1alpha1.PodGCControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration(a.(*config.PodGCControllerConfiguration), b.(*v1alpha1.PodGCControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.ReplicaSetControllerConfiguration)(nil), (*config.ReplicaSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_ReplicaSetControllerConfiguration_To_config_ReplicaSetControllerConfiguration(a.(*v1alpha1.ReplicaSetControllerConfiguration), b.(*config.ReplicaSetControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.ReplicaSetControllerConfiguration)(nil), (*v1alpha1.ReplicaSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration(a.(*config.ReplicaSetControllerConfiguration), b.(*v1alpha1.ReplicaSetControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.ReplicationControllerConfiguration)(nil), (*config.ReplicationControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_ReplicationControllerConfiguration_To_config_ReplicationControllerConfiguration(a.(*v1alpha1.ReplicationControllerConfiguration), b.(*config.ReplicationControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.ReplicationControllerConfiguration)(nil), (*v1alpha1.ReplicationControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration(a.(*config.ReplicationControllerConfiguration), b.(*v1alpha1.ReplicationControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.ResourceQuotaControllerConfiguration)(nil), (*config.ResourceQuotaControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_ResourceQuotaControllerConfiguration_To_config_ResourceQuotaControllerConfiguration(a.(*v1alpha1.ResourceQuotaControllerConfiguration), b.(*config.ResourceQuotaControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.ResourceQuotaControllerConfiguration)(nil), (*v1alpha1.ResourceQuotaControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration(a.(*config.ResourceQuotaControllerConfiguration), b.(*v1alpha1.ResourceQuotaControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.SAControllerConfiguration)(nil), (*config.SAControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_SAControllerConfiguration_To_config_SAControllerConfiguration(a.(*v1alpha1.SAControllerConfiguration), b.(*config.SAControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.SAControllerConfiguration)(nil), (*v1alpha1.SAControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration(a.(*config.SAControllerConfiguration), b.(*v1alpha1.SAControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.ServiceControllerConfiguration)(nil), (*config.ServiceControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration(a.(*v1alpha1.ServiceControllerConfiguration), b.(*config.ServiceControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.ServiceControllerConfiguration)(nil), (*v1alpha1.ServiceControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(a.(*config.ServiceControllerConfiguration), b.(*v1alpha1.ServiceControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*v1alpha1.VolumeConfiguration)(nil), (*config.VolumeConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_VolumeConfiguration_To_config_VolumeConfiguration(a.(*v1alpha1.VolumeConfiguration), b.(*config.VolumeConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*config.VolumeConfiguration)(nil), (*v1alpha1.VolumeConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_VolumeConfiguration_To_v1alpha1_VolumeConfiguration(a.(*config.VolumeConfiguration), b.(*v1alpha1.VolumeConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddConversionFunc((*config.GenericControllerManagerConfiguration)(nil), (*v1alpha1.GenericControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(a.(*config.GenericControllerManagerConfiguration), b.(*v1alpha1.GenericControllerManagerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddConversionFunc((*config.KubeCloudSharedConfiguration)(nil), (*v1alpha1.KubeCloudSharedConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(a.(*config.KubeCloudSharedConfiguration), b.(*v1alpha1.KubeCloudSharedConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddConversionFunc((*config.ServiceControllerConfiguration)(nil), (*v1alpha1.ServiceControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(a.(*config.ServiceControllerConfiguration), b.(*v1alpha1.ServiceControllerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddConversionFunc((*v1alpha1.GenericControllerManagerConfiguration)(nil), (*config.GenericControllerManagerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_GenericControllerManagerConfiguration_To_config_GenericControllerManagerConfiguration(a.(*v1alpha1.GenericControllerManagerConfiguration), b.(*config.GenericControllerManagerConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddConversionFunc((*v1alpha1.KubeCloudSharedConfiguration)(nil), (*config.KubeCloudSharedConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConfiguration(a.(*v1alpha1.KubeCloudSharedConfiguration), b.(*config.KubeCloudSharedConfiguration), scope) + }); err != nil { + return err + } + if err := s.AddConversionFunc((*v1alpha1.ServiceControllerConfiguration)(nil), (*config.ServiceControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration(a.(*v1alpha1.ServiceControllerConfiguration), b.(*config.ServiceControllerConfiguration), scope) + }); err != nil { + return err + } + return nil +} + +func autoConvert_v1alpha1_AttachDetachControllerConfiguration_To_config_AttachDetachControllerConfiguration(in *v1alpha1.AttachDetachControllerConfiguration, out *config.AttachDetachControllerConfiguration, s conversion.Scope) error { + out.DisableAttachDetachReconcilerSync = in.DisableAttachDetachReconcilerSync + out.ReconcilerSyncLoopPeriod = in.ReconcilerSyncLoopPeriod + return nil +} + +// Convert_v1alpha1_AttachDetachControllerConfiguration_To_config_AttachDetachControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_AttachDetachControllerConfiguration_To_config_AttachDetachControllerConfiguration(in *v1alpha1.AttachDetachControllerConfiguration, out *config.AttachDetachControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_AttachDetachControllerConfiguration_To_config_AttachDetachControllerConfiguration(in, out, s) +} + +func autoConvert_config_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration(in *config.AttachDetachControllerConfiguration, out *v1alpha1.AttachDetachControllerConfiguration, s conversion.Scope) error { + out.DisableAttachDetachReconcilerSync = in.DisableAttachDetachReconcilerSync + out.ReconcilerSyncLoopPeriod = in.ReconcilerSyncLoopPeriod + return nil +} + +// Convert_config_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration is an autogenerated conversion function. +func Convert_config_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration(in *config.AttachDetachControllerConfiguration, out *v1alpha1.AttachDetachControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_CSRSigningControllerConfiguration_To_config_CSRSigningControllerConfiguration(in *v1alpha1.CSRSigningControllerConfiguration, out *config.CSRSigningControllerConfiguration, s conversion.Scope) error { + out.ClusterSigningCertFile = in.ClusterSigningCertFile + out.ClusterSigningKeyFile = in.ClusterSigningKeyFile + out.ClusterSigningDuration = in.ClusterSigningDuration + return nil +} + +// Convert_v1alpha1_CSRSigningControllerConfiguration_To_config_CSRSigningControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_CSRSigningControllerConfiguration_To_config_CSRSigningControllerConfiguration(in *v1alpha1.CSRSigningControllerConfiguration, out *config.CSRSigningControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_CSRSigningControllerConfiguration_To_config_CSRSigningControllerConfiguration(in, out, s) +} + +func autoConvert_config_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(in *config.CSRSigningControllerConfiguration, out *v1alpha1.CSRSigningControllerConfiguration, s conversion.Scope) error { + out.ClusterSigningCertFile = in.ClusterSigningCertFile + out.ClusterSigningKeyFile = in.ClusterSigningKeyFile + out.ClusterSigningDuration = in.ClusterSigningDuration + return nil +} + +// Convert_config_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration is an autogenerated conversion function. +func Convert_config_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(in *config.CSRSigningControllerConfiguration, out *v1alpha1.CSRSigningControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_CloudProviderConfiguration_To_config_CloudProviderConfiguration(in *v1alpha1.CloudProviderConfiguration, out *config.CloudProviderConfiguration, s conversion.Scope) error { + out.Name = in.Name + out.CloudConfigFile = in.CloudConfigFile + return nil +} + +// Convert_v1alpha1_CloudProviderConfiguration_To_config_CloudProviderConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_CloudProviderConfiguration_To_config_CloudProviderConfiguration(in *v1alpha1.CloudProviderConfiguration, out *config.CloudProviderConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_CloudProviderConfiguration_To_config_CloudProviderConfiguration(in, out, s) +} + +func autoConvert_config_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration(in *config.CloudProviderConfiguration, out *v1alpha1.CloudProviderConfiguration, s conversion.Scope) error { + out.Name = in.Name + out.CloudConfigFile = in.CloudConfigFile + return nil +} + +// Convert_config_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration is an autogenerated conversion function. +func Convert_config_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration(in *config.CloudProviderConfiguration, out *v1alpha1.CloudProviderConfiguration, s conversion.Scope) error { + return autoConvert_config_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_DaemonSetControllerConfiguration_To_config_DaemonSetControllerConfiguration(in *v1alpha1.DaemonSetControllerConfiguration, out *config.DaemonSetControllerConfiguration, s conversion.Scope) error { + out.ConcurrentDaemonSetSyncs = in.ConcurrentDaemonSetSyncs + return nil +} + +// Convert_v1alpha1_DaemonSetControllerConfiguration_To_config_DaemonSetControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_DaemonSetControllerConfiguration_To_config_DaemonSetControllerConfiguration(in *v1alpha1.DaemonSetControllerConfiguration, out *config.DaemonSetControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_DaemonSetControllerConfiguration_To_config_DaemonSetControllerConfiguration(in, out, s) +} + +func autoConvert_config_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(in *config.DaemonSetControllerConfiguration, out *v1alpha1.DaemonSetControllerConfiguration, s conversion.Scope) error { + out.ConcurrentDaemonSetSyncs = in.ConcurrentDaemonSetSyncs + return nil +} + +// Convert_config_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration is an autogenerated conversion function. +func Convert_config_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(in *config.DaemonSetControllerConfiguration, out *v1alpha1.DaemonSetControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration(in *v1alpha1.DeploymentControllerConfiguration, out *config.DeploymentControllerConfiguration, s conversion.Scope) error { + out.ConcurrentDeploymentSyncs = in.ConcurrentDeploymentSyncs + out.DeploymentControllerSyncPeriod = in.DeploymentControllerSyncPeriod + return nil +} + +// Convert_v1alpha1_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration(in *v1alpha1.DeploymentControllerConfiguration, out *config.DeploymentControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration(in, out, s) +} + +func autoConvert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(in *config.DeploymentControllerConfiguration, out *v1alpha1.DeploymentControllerConfiguration, s conversion.Scope) error { + out.ConcurrentDeploymentSyncs = in.ConcurrentDeploymentSyncs + out.DeploymentControllerSyncPeriod = in.DeploymentControllerSyncPeriod + return nil +} + +// Convert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration is an autogenerated conversion function. +func Convert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(in *config.DeploymentControllerConfiguration, out *v1alpha1.DeploymentControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_DeprecatedControllerConfiguration_To_config_DeprecatedControllerConfiguration(in *v1alpha1.DeprecatedControllerConfiguration, out *config.DeprecatedControllerConfiguration, s conversion.Scope) error { + out.DeletingPodsQPS = in.DeletingPodsQPS + out.DeletingPodsBurst = in.DeletingPodsBurst + out.RegisterRetryCount = in.RegisterRetryCount + return nil +} + +// Convert_v1alpha1_DeprecatedControllerConfiguration_To_config_DeprecatedControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_DeprecatedControllerConfiguration_To_config_DeprecatedControllerConfiguration(in *v1alpha1.DeprecatedControllerConfiguration, out *config.DeprecatedControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_DeprecatedControllerConfiguration_To_config_DeprecatedControllerConfiguration(in, out, s) +} + +func autoConvert_config_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(in *config.DeprecatedControllerConfiguration, out *v1alpha1.DeprecatedControllerConfiguration, s conversion.Scope) error { + out.DeletingPodsQPS = in.DeletingPodsQPS + out.DeletingPodsBurst = in.DeletingPodsBurst + out.RegisterRetryCount = in.RegisterRetryCount + return nil +} + +// Convert_config_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration is an autogenerated conversion function. +func Convert_config_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(in *config.DeprecatedControllerConfiguration, out *v1alpha1.DeprecatedControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_EndpointControllerConfiguration_To_config_EndpointControllerConfiguration(in *v1alpha1.EndpointControllerConfiguration, out *config.EndpointControllerConfiguration, s conversion.Scope) error { + out.ConcurrentEndpointSyncs = in.ConcurrentEndpointSyncs + return nil +} + +// Convert_v1alpha1_EndpointControllerConfiguration_To_config_EndpointControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_EndpointControllerConfiguration_To_config_EndpointControllerConfiguration(in *v1alpha1.EndpointControllerConfiguration, out *config.EndpointControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_EndpointControllerConfiguration_To_config_EndpointControllerConfiguration(in, out, s) +} + +func autoConvert_config_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(in *config.EndpointControllerConfiguration, out *v1alpha1.EndpointControllerConfiguration, s conversion.Scope) error { + out.ConcurrentEndpointSyncs = in.ConcurrentEndpointSyncs + return nil +} + +// Convert_config_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration is an autogenerated conversion function. +func Convert_config_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(in *config.EndpointControllerConfiguration, out *v1alpha1.EndpointControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_GarbageCollectorControllerConfiguration_To_config_GarbageCollectorControllerConfiguration(in *v1alpha1.GarbageCollectorControllerConfiguration, out *config.GarbageCollectorControllerConfiguration, s conversion.Scope) error { + if err := v1.Convert_Pointer_bool_To_bool(&in.EnableGarbageCollector, &out.EnableGarbageCollector, s); err != nil { + return err + } + out.ConcurrentGCSyncs = in.ConcurrentGCSyncs + out.GCIgnoredResources = *(*[]config.GroupResource)(unsafe.Pointer(&in.GCIgnoredResources)) + return nil +} + +// Convert_v1alpha1_GarbageCollectorControllerConfiguration_To_config_GarbageCollectorControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_GarbageCollectorControllerConfiguration_To_config_GarbageCollectorControllerConfiguration(in *v1alpha1.GarbageCollectorControllerConfiguration, out *config.GarbageCollectorControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_GarbageCollectorControllerConfiguration_To_config_GarbageCollectorControllerConfiguration(in, out, s) +} + +func autoConvert_config_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration(in *config.GarbageCollectorControllerConfiguration, out *v1alpha1.GarbageCollectorControllerConfiguration, s conversion.Scope) error { + if err := v1.Convert_bool_To_Pointer_bool(&in.EnableGarbageCollector, &out.EnableGarbageCollector, s); err != nil { + return err + } + out.ConcurrentGCSyncs = in.ConcurrentGCSyncs + out.GCIgnoredResources = *(*[]v1alpha1.GroupResource)(unsafe.Pointer(&in.GCIgnoredResources)) + return nil +} + +// Convert_config_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration is an autogenerated conversion function. +func Convert_config_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration(in *config.GarbageCollectorControllerConfiguration, out *v1alpha1.GarbageCollectorControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_GenericControllerManagerConfiguration_To_config_GenericControllerManagerConfiguration(in *v1alpha1.GenericControllerManagerConfiguration, out *config.GenericControllerManagerConfiguration, s conversion.Scope) error { + out.Port = in.Port + out.Address = in.Address + out.MinResyncPeriod = in.MinResyncPeriod + if err := apisconfigv1alpha1.Convert_v1alpha1_ClientConnectionConfiguration_To_config_ClientConnectionConfiguration(&in.ClientConnection, &out.ClientConnection, s); err != nil { + return err + } + out.ControllerStartInterval = in.ControllerStartInterval + if err := pkgapisconfigv1alpha1.Convert_v1alpha1_LeaderElectionConfiguration_To_config_LeaderElectionConfiguration(&in.LeaderElection, &out.LeaderElection, s); err != nil { + return err + } + out.Controllers = *(*[]string)(unsafe.Pointer(&in.Controllers)) + if err := pkgapisconfigv1alpha1.Convert_v1alpha1_DebuggingConfiguration_To_config_DebuggingConfiguration(&in.Debugging, &out.Debugging, s); err != nil { + return err + } + return nil +} + +func autoConvert_config_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(in *config.GenericControllerManagerConfiguration, out *v1alpha1.GenericControllerManagerConfiguration, s conversion.Scope) error { + out.Port = in.Port + out.Address = in.Address + out.MinResyncPeriod = in.MinResyncPeriod + if err := apisconfigv1alpha1.Convert_config_ClientConnectionConfiguration_To_v1alpha1_ClientConnectionConfiguration(&in.ClientConnection, &out.ClientConnection, s); err != nil { + return err + } + out.ControllerStartInterval = in.ControllerStartInterval + if err := pkgapisconfigv1alpha1.Convert_config_LeaderElectionConfiguration_To_v1alpha1_LeaderElectionConfiguration(&in.LeaderElection, &out.LeaderElection, s); err != nil { + return err + } + out.Controllers = *(*[]string)(unsafe.Pointer(&in.Controllers)) + if err := pkgapisconfigv1alpha1.Convert_config_DebuggingConfiguration_To_v1alpha1_DebuggingConfiguration(&in.Debugging, &out.Debugging, s); err != nil { + return err + } + return nil +} + +func autoConvert_v1alpha1_GroupResource_To_config_GroupResource(in *v1alpha1.GroupResource, out *config.GroupResource, s conversion.Scope) error { + out.Group = in.Group + out.Resource = in.Resource + return nil +} + +// Convert_v1alpha1_GroupResource_To_config_GroupResource is an autogenerated conversion function. +func Convert_v1alpha1_GroupResource_To_config_GroupResource(in *v1alpha1.GroupResource, out *config.GroupResource, s conversion.Scope) error { + return autoConvert_v1alpha1_GroupResource_To_config_GroupResource(in, out, s) +} + +func autoConvert_config_GroupResource_To_v1alpha1_GroupResource(in *config.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error { + out.Group = in.Group + out.Resource = in.Resource + return nil +} + +// Convert_config_GroupResource_To_v1alpha1_GroupResource is an autogenerated conversion function. +func Convert_config_GroupResource_To_v1alpha1_GroupResource(in *config.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error { + return autoConvert_config_GroupResource_To_v1alpha1_GroupResource(in, out, s) +} + +func autoConvert_v1alpha1_HPAControllerConfiguration_To_config_HPAControllerConfiguration(in *v1alpha1.HPAControllerConfiguration, out *config.HPAControllerConfiguration, s conversion.Scope) error { + out.HorizontalPodAutoscalerSyncPeriod = in.HorizontalPodAutoscalerSyncPeriod + out.HorizontalPodAutoscalerUpscaleForbiddenWindow = in.HorizontalPodAutoscalerUpscaleForbiddenWindow + out.HorizontalPodAutoscalerDownscaleStabilizationWindow = in.HorizontalPodAutoscalerDownscaleStabilizationWindow + out.HorizontalPodAutoscalerDownscaleForbiddenWindow = in.HorizontalPodAutoscalerDownscaleForbiddenWindow + out.HorizontalPodAutoscalerTolerance = in.HorizontalPodAutoscalerTolerance + if err := v1.Convert_Pointer_bool_To_bool(&in.HorizontalPodAutoscalerUseRESTClients, &out.HorizontalPodAutoscalerUseRESTClients, s); err != nil { + return err + } + out.HorizontalPodAutoscalerCPUInitializationPeriod = in.HorizontalPodAutoscalerCPUInitializationPeriod + out.HorizontalPodAutoscalerInitialReadinessDelay = in.HorizontalPodAutoscalerInitialReadinessDelay + return nil +} + +// Convert_v1alpha1_HPAControllerConfiguration_To_config_HPAControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_HPAControllerConfiguration_To_config_HPAControllerConfiguration(in *v1alpha1.HPAControllerConfiguration, out *config.HPAControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_HPAControllerConfiguration_To_config_HPAControllerConfiguration(in, out, s) +} + +func autoConvert_config_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration(in *config.HPAControllerConfiguration, out *v1alpha1.HPAControllerConfiguration, s conversion.Scope) error { + out.HorizontalPodAutoscalerSyncPeriod = in.HorizontalPodAutoscalerSyncPeriod + out.HorizontalPodAutoscalerUpscaleForbiddenWindow = in.HorizontalPodAutoscalerUpscaleForbiddenWindow + out.HorizontalPodAutoscalerDownscaleForbiddenWindow = in.HorizontalPodAutoscalerDownscaleForbiddenWindow + out.HorizontalPodAutoscalerDownscaleStabilizationWindow = in.HorizontalPodAutoscalerDownscaleStabilizationWindow + out.HorizontalPodAutoscalerTolerance = in.HorizontalPodAutoscalerTolerance + if err := v1.Convert_bool_To_Pointer_bool(&in.HorizontalPodAutoscalerUseRESTClients, &out.HorizontalPodAutoscalerUseRESTClients, s); err != nil { + return err + } + out.HorizontalPodAutoscalerCPUInitializationPeriod = in.HorizontalPodAutoscalerCPUInitializationPeriod + out.HorizontalPodAutoscalerInitialReadinessDelay = in.HorizontalPodAutoscalerInitialReadinessDelay + return nil +} + +// Convert_config_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration is an autogenerated conversion function. +func Convert_config_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration(in *config.HPAControllerConfiguration, out *v1alpha1.HPAControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_JobControllerConfiguration_To_config_JobControllerConfiguration(in *v1alpha1.JobControllerConfiguration, out *config.JobControllerConfiguration, s conversion.Scope) error { + out.ConcurrentJobSyncs = in.ConcurrentJobSyncs + return nil +} + +// Convert_v1alpha1_JobControllerConfiguration_To_config_JobControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_JobControllerConfiguration_To_config_JobControllerConfiguration(in *v1alpha1.JobControllerConfiguration, out *config.JobControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_JobControllerConfiguration_To_config_JobControllerConfiguration(in, out, s) +} + +func autoConvert_config_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration(in *config.JobControllerConfiguration, out *v1alpha1.JobControllerConfiguration, s conversion.Scope) error { + out.ConcurrentJobSyncs = in.ConcurrentJobSyncs + return nil +} + +// Convert_config_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration is an autogenerated conversion function. +func Convert_config_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration(in *config.JobControllerConfiguration, out *v1alpha1.JobControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConfiguration(in *v1alpha1.KubeCloudSharedConfiguration, out *config.KubeCloudSharedConfiguration, s conversion.Scope) error { + if err := Convert_v1alpha1_CloudProviderConfiguration_To_config_CloudProviderConfiguration(&in.CloudProvider, &out.CloudProvider, s); err != nil { + return err + } + out.ExternalCloudVolumePlugin = in.ExternalCloudVolumePlugin + out.UseServiceAccountCredentials = in.UseServiceAccountCredentials + out.AllowUntaggedCloud = in.AllowUntaggedCloud + out.RouteReconciliationPeriod = in.RouteReconciliationPeriod + out.NodeMonitorPeriod = in.NodeMonitorPeriod + out.ClusterName = in.ClusterName + out.ClusterCIDR = in.ClusterCIDR + out.AllocateNodeCIDRs = in.AllocateNodeCIDRs + out.CIDRAllocatorType = in.CIDRAllocatorType + if err := v1.Convert_Pointer_bool_To_bool(&in.ConfigureCloudRoutes, &out.ConfigureCloudRoutes, s); err != nil { + return err + } + out.NodeSyncPeriod = in.NodeSyncPeriod + return nil +} + +func autoConvert_config_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(in *config.KubeCloudSharedConfiguration, out *v1alpha1.KubeCloudSharedConfiguration, s conversion.Scope) error { + if err := Convert_config_CloudProviderConfiguration_To_v1alpha1_CloudProviderConfiguration(&in.CloudProvider, &out.CloudProvider, s); err != nil { + return err + } + out.ExternalCloudVolumePlugin = in.ExternalCloudVolumePlugin + out.UseServiceAccountCredentials = in.UseServiceAccountCredentials + out.AllowUntaggedCloud = in.AllowUntaggedCloud + out.RouteReconciliationPeriod = in.RouteReconciliationPeriod + out.NodeMonitorPeriod = in.NodeMonitorPeriod + out.ClusterName = in.ClusterName + out.ClusterCIDR = in.ClusterCIDR + out.AllocateNodeCIDRs = in.AllocateNodeCIDRs + out.CIDRAllocatorType = in.CIDRAllocatorType + if err := v1.Convert_bool_To_Pointer_bool(&in.ConfigureCloudRoutes, &out.ConfigureCloudRoutes, s); err != nil { + return err + } + out.NodeSyncPeriod = in.NodeSyncPeriod + return nil +} + +func autoConvert_v1alpha1_KubeControllerManagerConfiguration_To_config_KubeControllerManagerConfiguration(in *v1alpha1.KubeControllerManagerConfiguration, out *config.KubeControllerManagerConfiguration, s conversion.Scope) error { + if err := Convert_v1alpha1_GenericControllerManagerConfiguration_To_config_GenericControllerManagerConfiguration(&in.Generic, &out.Generic, s); err != nil { + return err + } + if err := Convert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConfiguration(&in.KubeCloudShared, &out.KubeCloudShared, s); err != nil { + return err + } + if err := Convert_v1alpha1_AttachDetachControllerConfiguration_To_config_AttachDetachControllerConfiguration(&in.AttachDetachController, &out.AttachDetachController, s); err != nil { + return err + } + if err := Convert_v1alpha1_CSRSigningControllerConfiguration_To_config_CSRSigningControllerConfiguration(&in.CSRSigningController, &out.CSRSigningController, s); err != nil { + return err + } + if err := Convert_v1alpha1_DaemonSetControllerConfiguration_To_config_DaemonSetControllerConfiguration(&in.DaemonSetController, &out.DaemonSetController, s); err != nil { + return err + } + if err := Convert_v1alpha1_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration(&in.DeploymentController, &out.DeploymentController, s); err != nil { + return err + } + if err := Convert_v1alpha1_DeprecatedControllerConfiguration_To_config_DeprecatedControllerConfiguration(&in.DeprecatedController, &out.DeprecatedController, s); err != nil { + return err + } + if err := Convert_v1alpha1_EndpointControllerConfiguration_To_config_EndpointControllerConfiguration(&in.EndpointController, &out.EndpointController, s); err != nil { + return err + } + if err := Convert_v1alpha1_GarbageCollectorControllerConfiguration_To_config_GarbageCollectorControllerConfiguration(&in.GarbageCollectorController, &out.GarbageCollectorController, s); err != nil { + return err + } + if err := Convert_v1alpha1_HPAControllerConfiguration_To_config_HPAControllerConfiguration(&in.HPAController, &out.HPAController, s); err != nil { + return err + } + if err := Convert_v1alpha1_JobControllerConfiguration_To_config_JobControllerConfiguration(&in.JobController, &out.JobController, s); err != nil { + return err + } + if err := Convert_v1alpha1_NamespaceControllerConfiguration_To_config_NamespaceControllerConfiguration(&in.NamespaceController, &out.NamespaceController, s); err != nil { + return err + } + if err := Convert_v1alpha1_NodeIPAMControllerConfiguration_To_config_NodeIPAMControllerConfiguration(&in.NodeIPAMController, &out.NodeIPAMController, s); err != nil { + return err + } + if err := Convert_v1alpha1_NodeLifecycleControllerConfiguration_To_config_NodeLifecycleControllerConfiguration(&in.NodeLifecycleController, &out.NodeLifecycleController, s); err != nil { + return err + } + if err := Convert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_config_PersistentVolumeBinderControllerConfiguration(&in.PersistentVolumeBinderController, &out.PersistentVolumeBinderController, s); err != nil { + return err + } + if err := Convert_v1alpha1_PodGCControllerConfiguration_To_config_PodGCControllerConfiguration(&in.PodGCController, &out.PodGCController, s); err != nil { + return err + } + if err := Convert_v1alpha1_ReplicaSetControllerConfiguration_To_config_ReplicaSetControllerConfiguration(&in.ReplicaSetController, &out.ReplicaSetController, s); err != nil { + return err + } + if err := Convert_v1alpha1_ReplicationControllerConfiguration_To_config_ReplicationControllerConfiguration(&in.ReplicationController, &out.ReplicationController, s); err != nil { + return err + } + if err := Convert_v1alpha1_ResourceQuotaControllerConfiguration_To_config_ResourceQuotaControllerConfiguration(&in.ResourceQuotaController, &out.ResourceQuotaController, s); err != nil { + return err + } + if err := Convert_v1alpha1_SAControllerConfiguration_To_config_SAControllerConfiguration(&in.SAController, &out.SAController, s); err != nil { + return err + } + if err := Convert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil { + return err + } + return nil +} + +// Convert_v1alpha1_KubeControllerManagerConfiguration_To_config_KubeControllerManagerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_KubeControllerManagerConfiguration_To_config_KubeControllerManagerConfiguration(in *v1alpha1.KubeControllerManagerConfiguration, out *config.KubeControllerManagerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_KubeControllerManagerConfiguration_To_config_KubeControllerManagerConfiguration(in, out, s) +} + +func autoConvert_config_KubeControllerManagerConfiguration_To_v1alpha1_KubeControllerManagerConfiguration(in *config.KubeControllerManagerConfiguration, out *v1alpha1.KubeControllerManagerConfiguration, s conversion.Scope) error { + if err := Convert_config_GenericControllerManagerConfiguration_To_v1alpha1_GenericControllerManagerConfiguration(&in.Generic, &out.Generic, s); err != nil { + return err + } + if err := Convert_config_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(&in.KubeCloudShared, &out.KubeCloudShared, s); err != nil { + return err + } + if err := Convert_config_AttachDetachControllerConfiguration_To_v1alpha1_AttachDetachControllerConfiguration(&in.AttachDetachController, &out.AttachDetachController, s); err != nil { + return err + } + if err := Convert_config_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(&in.CSRSigningController, &out.CSRSigningController, s); err != nil { + return err + } + if err := Convert_config_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(&in.DaemonSetController, &out.DaemonSetController, s); err != nil { + return err + } + if err := Convert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(&in.DeploymentController, &out.DeploymentController, s); err != nil { + return err + } + if err := Convert_config_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(&in.DeprecatedController, &out.DeprecatedController, s); err != nil { + return err + } + if err := Convert_config_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(&in.EndpointController, &out.EndpointController, s); err != nil { + return err + } + if err := Convert_config_GarbageCollectorControllerConfiguration_To_v1alpha1_GarbageCollectorControllerConfiguration(&in.GarbageCollectorController, &out.GarbageCollectorController, s); err != nil { + return err + } + if err := Convert_config_HPAControllerConfiguration_To_v1alpha1_HPAControllerConfiguration(&in.HPAController, &out.HPAController, s); err != nil { + return err + } + if err := Convert_config_JobControllerConfiguration_To_v1alpha1_JobControllerConfiguration(&in.JobController, &out.JobController, s); err != nil { + return err + } + if err := Convert_config_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration(&in.NamespaceController, &out.NamespaceController, s); err != nil { + return err + } + if err := Convert_config_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration(&in.NodeIPAMController, &out.NodeIPAMController, s); err != nil { + return err + } + if err := Convert_config_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration(&in.NodeLifecycleController, &out.NodeLifecycleController, s); err != nil { + return err + } + if err := Convert_config_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration(&in.PersistentVolumeBinderController, &out.PersistentVolumeBinderController, s); err != nil { + return err + } + if err := Convert_config_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration(&in.PodGCController, &out.PodGCController, s); err != nil { + return err + } + if err := Convert_config_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration(&in.ReplicaSetController, &out.ReplicaSetController, s); err != nil { + return err + } + if err := Convert_config_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration(&in.ReplicationController, &out.ReplicationController, s); err != nil { + return err + } + if err := Convert_config_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration(&in.ResourceQuotaController, &out.ResourceQuotaController, s); err != nil { + return err + } + if err := Convert_config_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration(&in.SAController, &out.SAController, s); err != nil { + return err + } + if err := Convert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil { + return err + } + return nil +} + +// Convert_config_KubeControllerManagerConfiguration_To_v1alpha1_KubeControllerManagerConfiguration is an autogenerated conversion function. +func Convert_config_KubeControllerManagerConfiguration_To_v1alpha1_KubeControllerManagerConfiguration(in *config.KubeControllerManagerConfiguration, out *v1alpha1.KubeControllerManagerConfiguration, s conversion.Scope) error { + return autoConvert_config_KubeControllerManagerConfiguration_To_v1alpha1_KubeControllerManagerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_NamespaceControllerConfiguration_To_config_NamespaceControllerConfiguration(in *v1alpha1.NamespaceControllerConfiguration, out *config.NamespaceControllerConfiguration, s conversion.Scope) error { + out.NamespaceSyncPeriod = in.NamespaceSyncPeriod + out.ConcurrentNamespaceSyncs = in.ConcurrentNamespaceSyncs + return nil +} + +// Convert_v1alpha1_NamespaceControllerConfiguration_To_config_NamespaceControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_NamespaceControllerConfiguration_To_config_NamespaceControllerConfiguration(in *v1alpha1.NamespaceControllerConfiguration, out *config.NamespaceControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_NamespaceControllerConfiguration_To_config_NamespaceControllerConfiguration(in, out, s) +} + +func autoConvert_config_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration(in *config.NamespaceControllerConfiguration, out *v1alpha1.NamespaceControllerConfiguration, s conversion.Scope) error { + out.NamespaceSyncPeriod = in.NamespaceSyncPeriod + out.ConcurrentNamespaceSyncs = in.ConcurrentNamespaceSyncs + return nil +} + +// Convert_config_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration is an autogenerated conversion function. +func Convert_config_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration(in *config.NamespaceControllerConfiguration, out *v1alpha1.NamespaceControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_NamespaceControllerConfiguration_To_v1alpha1_NamespaceControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_NodeIPAMControllerConfiguration_To_config_NodeIPAMControllerConfiguration(in *v1alpha1.NodeIPAMControllerConfiguration, out *config.NodeIPAMControllerConfiguration, s conversion.Scope) error { + out.ServiceCIDR = in.ServiceCIDR + out.NodeCIDRMaskSize = in.NodeCIDRMaskSize + return nil +} + +// Convert_v1alpha1_NodeIPAMControllerConfiguration_To_config_NodeIPAMControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_NodeIPAMControllerConfiguration_To_config_NodeIPAMControllerConfiguration(in *v1alpha1.NodeIPAMControllerConfiguration, out *config.NodeIPAMControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_NodeIPAMControllerConfiguration_To_config_NodeIPAMControllerConfiguration(in, out, s) +} + +func autoConvert_config_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration(in *config.NodeIPAMControllerConfiguration, out *v1alpha1.NodeIPAMControllerConfiguration, s conversion.Scope) error { + out.ServiceCIDR = in.ServiceCIDR + out.NodeCIDRMaskSize = in.NodeCIDRMaskSize + return nil +} + +// Convert_config_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration is an autogenerated conversion function. +func Convert_config_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration(in *config.NodeIPAMControllerConfiguration, out *v1alpha1.NodeIPAMControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_NodeIPAMControllerConfiguration_To_v1alpha1_NodeIPAMControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_NodeLifecycleControllerConfiguration_To_config_NodeLifecycleControllerConfiguration(in *v1alpha1.NodeLifecycleControllerConfiguration, out *config.NodeLifecycleControllerConfiguration, s conversion.Scope) error { + if err := v1.Convert_Pointer_bool_To_bool(&in.EnableTaintManager, &out.EnableTaintManager, s); err != nil { + return err + } + out.NodeEvictionRate = in.NodeEvictionRate + out.SecondaryNodeEvictionRate = in.SecondaryNodeEvictionRate + out.NodeStartupGracePeriod = in.NodeStartupGracePeriod + out.NodeMonitorGracePeriod = in.NodeMonitorGracePeriod + out.PodEvictionTimeout = in.PodEvictionTimeout + out.LargeClusterSizeThreshold = in.LargeClusterSizeThreshold + out.UnhealthyZoneThreshold = in.UnhealthyZoneThreshold + return nil +} + +// Convert_v1alpha1_NodeLifecycleControllerConfiguration_To_config_NodeLifecycleControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_NodeLifecycleControllerConfiguration_To_config_NodeLifecycleControllerConfiguration(in *v1alpha1.NodeLifecycleControllerConfiguration, out *config.NodeLifecycleControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_NodeLifecycleControllerConfiguration_To_config_NodeLifecycleControllerConfiguration(in, out, s) +} + +func autoConvert_config_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration(in *config.NodeLifecycleControllerConfiguration, out *v1alpha1.NodeLifecycleControllerConfiguration, s conversion.Scope) error { + if err := v1.Convert_bool_To_Pointer_bool(&in.EnableTaintManager, &out.EnableTaintManager, s); err != nil { + return err + } + out.NodeEvictionRate = in.NodeEvictionRate + out.SecondaryNodeEvictionRate = in.SecondaryNodeEvictionRate + out.NodeStartupGracePeriod = in.NodeStartupGracePeriod + out.NodeMonitorGracePeriod = in.NodeMonitorGracePeriod + out.PodEvictionTimeout = in.PodEvictionTimeout + out.LargeClusterSizeThreshold = in.LargeClusterSizeThreshold + out.UnhealthyZoneThreshold = in.UnhealthyZoneThreshold + return nil +} + +// Convert_config_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration is an autogenerated conversion function. +func Convert_config_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration(in *config.NodeLifecycleControllerConfiguration, out *v1alpha1.NodeLifecycleControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_NodeLifecycleControllerConfiguration_To_v1alpha1_NodeLifecycleControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_config_PersistentVolumeBinderControllerConfiguration(in *v1alpha1.PersistentVolumeBinderControllerConfiguration, out *config.PersistentVolumeBinderControllerConfiguration, s conversion.Scope) error { + out.PVClaimBinderSyncPeriod = in.PVClaimBinderSyncPeriod + if err := Convert_v1alpha1_VolumeConfiguration_To_config_VolumeConfiguration(&in.VolumeConfiguration, &out.VolumeConfiguration, s); err != nil { + return err + } + return nil +} + +// Convert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_config_PersistentVolumeBinderControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_config_PersistentVolumeBinderControllerConfiguration(in *v1alpha1.PersistentVolumeBinderControllerConfiguration, out *config.PersistentVolumeBinderControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_PersistentVolumeBinderControllerConfiguration_To_config_PersistentVolumeBinderControllerConfiguration(in, out, s) +} + +func autoConvert_config_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration(in *config.PersistentVolumeBinderControllerConfiguration, out *v1alpha1.PersistentVolumeBinderControllerConfiguration, s conversion.Scope) error { + out.PVClaimBinderSyncPeriod = in.PVClaimBinderSyncPeriod + if err := Convert_config_VolumeConfiguration_To_v1alpha1_VolumeConfiguration(&in.VolumeConfiguration, &out.VolumeConfiguration, s); err != nil { + return err + } + return nil +} + +// Convert_config_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration is an autogenerated conversion function. +func Convert_config_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration(in *config.PersistentVolumeBinderControllerConfiguration, out *v1alpha1.PersistentVolumeBinderControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_PersistentVolumeBinderControllerConfiguration_To_v1alpha1_PersistentVolumeBinderControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_config_PersistentVolumeRecyclerConfiguration(in *v1alpha1.PersistentVolumeRecyclerConfiguration, out *config.PersistentVolumeRecyclerConfiguration, s conversion.Scope) error { + out.MaximumRetry = in.MaximumRetry + out.MinimumTimeoutNFS = in.MinimumTimeoutNFS + out.PodTemplateFilePathNFS = in.PodTemplateFilePathNFS + out.IncrementTimeoutNFS = in.IncrementTimeoutNFS + out.PodTemplateFilePathHostPath = in.PodTemplateFilePathHostPath + out.MinimumTimeoutHostPath = in.MinimumTimeoutHostPath + out.IncrementTimeoutHostPath = in.IncrementTimeoutHostPath + return nil +} + +// Convert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_config_PersistentVolumeRecyclerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_config_PersistentVolumeRecyclerConfiguration(in *v1alpha1.PersistentVolumeRecyclerConfiguration, out *config.PersistentVolumeRecyclerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_config_PersistentVolumeRecyclerConfiguration(in, out, s) +} + +func autoConvert_config_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration(in *config.PersistentVolumeRecyclerConfiguration, out *v1alpha1.PersistentVolumeRecyclerConfiguration, s conversion.Scope) error { + out.MaximumRetry = in.MaximumRetry + out.MinimumTimeoutNFS = in.MinimumTimeoutNFS + out.PodTemplateFilePathNFS = in.PodTemplateFilePathNFS + out.IncrementTimeoutNFS = in.IncrementTimeoutNFS + out.PodTemplateFilePathHostPath = in.PodTemplateFilePathHostPath + out.MinimumTimeoutHostPath = in.MinimumTimeoutHostPath + out.IncrementTimeoutHostPath = in.IncrementTimeoutHostPath + return nil +} + +// Convert_config_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration is an autogenerated conversion function. +func Convert_config_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration(in *config.PersistentVolumeRecyclerConfiguration, out *v1alpha1.PersistentVolumeRecyclerConfiguration, s conversion.Scope) error { + return autoConvert_config_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_PodGCControllerConfiguration_To_config_PodGCControllerConfiguration(in *v1alpha1.PodGCControllerConfiguration, out *config.PodGCControllerConfiguration, s conversion.Scope) error { + out.TerminatedPodGCThreshold = in.TerminatedPodGCThreshold + return nil +} + +// Convert_v1alpha1_PodGCControllerConfiguration_To_config_PodGCControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_PodGCControllerConfiguration_To_config_PodGCControllerConfiguration(in *v1alpha1.PodGCControllerConfiguration, out *config.PodGCControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_PodGCControllerConfiguration_To_config_PodGCControllerConfiguration(in, out, s) +} + +func autoConvert_config_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration(in *config.PodGCControllerConfiguration, out *v1alpha1.PodGCControllerConfiguration, s conversion.Scope) error { + out.TerminatedPodGCThreshold = in.TerminatedPodGCThreshold + return nil +} + +// Convert_config_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration is an autogenerated conversion function. +func Convert_config_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration(in *config.PodGCControllerConfiguration, out *v1alpha1.PodGCControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_PodGCControllerConfiguration_To_v1alpha1_PodGCControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_ReplicaSetControllerConfiguration_To_config_ReplicaSetControllerConfiguration(in *v1alpha1.ReplicaSetControllerConfiguration, out *config.ReplicaSetControllerConfiguration, s conversion.Scope) error { + out.ConcurrentRSSyncs = in.ConcurrentRSSyncs + return nil +} + +// Convert_v1alpha1_ReplicaSetControllerConfiguration_To_config_ReplicaSetControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_ReplicaSetControllerConfiguration_To_config_ReplicaSetControllerConfiguration(in *v1alpha1.ReplicaSetControllerConfiguration, out *config.ReplicaSetControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_ReplicaSetControllerConfiguration_To_config_ReplicaSetControllerConfiguration(in, out, s) +} + +func autoConvert_config_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration(in *config.ReplicaSetControllerConfiguration, out *v1alpha1.ReplicaSetControllerConfiguration, s conversion.Scope) error { + out.ConcurrentRSSyncs = in.ConcurrentRSSyncs + return nil +} + +// Convert_config_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration is an autogenerated conversion function. +func Convert_config_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration(in *config.ReplicaSetControllerConfiguration, out *v1alpha1.ReplicaSetControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_ReplicaSetControllerConfiguration_To_v1alpha1_ReplicaSetControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_ReplicationControllerConfiguration_To_config_ReplicationControllerConfiguration(in *v1alpha1.ReplicationControllerConfiguration, out *config.ReplicationControllerConfiguration, s conversion.Scope) error { + out.ConcurrentRCSyncs = in.ConcurrentRCSyncs + return nil +} + +// Convert_v1alpha1_ReplicationControllerConfiguration_To_config_ReplicationControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_ReplicationControllerConfiguration_To_config_ReplicationControllerConfiguration(in *v1alpha1.ReplicationControllerConfiguration, out *config.ReplicationControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_ReplicationControllerConfiguration_To_config_ReplicationControllerConfiguration(in, out, s) +} + +func autoConvert_config_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration(in *config.ReplicationControllerConfiguration, out *v1alpha1.ReplicationControllerConfiguration, s conversion.Scope) error { + out.ConcurrentRCSyncs = in.ConcurrentRCSyncs + return nil +} + +// Convert_config_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration is an autogenerated conversion function. +func Convert_config_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration(in *config.ReplicationControllerConfiguration, out *v1alpha1.ReplicationControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_ReplicationControllerConfiguration_To_v1alpha1_ReplicationControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_ResourceQuotaControllerConfiguration_To_config_ResourceQuotaControllerConfiguration(in *v1alpha1.ResourceQuotaControllerConfiguration, out *config.ResourceQuotaControllerConfiguration, s conversion.Scope) error { + out.ResourceQuotaSyncPeriod = in.ResourceQuotaSyncPeriod + out.ConcurrentResourceQuotaSyncs = in.ConcurrentResourceQuotaSyncs + return nil +} + +// Convert_v1alpha1_ResourceQuotaControllerConfiguration_To_config_ResourceQuotaControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_ResourceQuotaControllerConfiguration_To_config_ResourceQuotaControllerConfiguration(in *v1alpha1.ResourceQuotaControllerConfiguration, out *config.ResourceQuotaControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_ResourceQuotaControllerConfiguration_To_config_ResourceQuotaControllerConfiguration(in, out, s) +} + +func autoConvert_config_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration(in *config.ResourceQuotaControllerConfiguration, out *v1alpha1.ResourceQuotaControllerConfiguration, s conversion.Scope) error { + out.ResourceQuotaSyncPeriod = in.ResourceQuotaSyncPeriod + out.ConcurrentResourceQuotaSyncs = in.ConcurrentResourceQuotaSyncs + return nil +} + +// Convert_config_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration is an autogenerated conversion function. +func Convert_config_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration(in *config.ResourceQuotaControllerConfiguration, out *v1alpha1.ResourceQuotaControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_ResourceQuotaControllerConfiguration_To_v1alpha1_ResourceQuotaControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_SAControllerConfiguration_To_config_SAControllerConfiguration(in *v1alpha1.SAControllerConfiguration, out *config.SAControllerConfiguration, s conversion.Scope) error { + out.ServiceAccountKeyFile = in.ServiceAccountKeyFile + out.ConcurrentSATokenSyncs = in.ConcurrentSATokenSyncs + out.RootCAFile = in.RootCAFile + return nil +} + +// Convert_v1alpha1_SAControllerConfiguration_To_config_SAControllerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_SAControllerConfiguration_To_config_SAControllerConfiguration(in *v1alpha1.SAControllerConfiguration, out *config.SAControllerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_SAControllerConfiguration_To_config_SAControllerConfiguration(in, out, s) +} + +func autoConvert_config_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration(in *config.SAControllerConfiguration, out *v1alpha1.SAControllerConfiguration, s conversion.Scope) error { + out.ServiceAccountKeyFile = in.ServiceAccountKeyFile + out.ConcurrentSATokenSyncs = in.ConcurrentSATokenSyncs + out.RootCAFile = in.RootCAFile + return nil +} + +// Convert_config_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration is an autogenerated conversion function. +func Convert_config_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration(in *config.SAControllerConfiguration, out *v1alpha1.SAControllerConfiguration, s conversion.Scope) error { + return autoConvert_config_SAControllerConfiguration_To_v1alpha1_SAControllerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration(in *v1alpha1.ServiceControllerConfiguration, out *config.ServiceControllerConfiguration, s conversion.Scope) error { + out.ConcurrentServiceSyncs = in.ConcurrentServiceSyncs + return nil +} + +func autoConvert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(in *config.ServiceControllerConfiguration, out *v1alpha1.ServiceControllerConfiguration, s conversion.Scope) error { + out.ConcurrentServiceSyncs = in.ConcurrentServiceSyncs + return nil +} + +func autoConvert_v1alpha1_VolumeConfiguration_To_config_VolumeConfiguration(in *v1alpha1.VolumeConfiguration, out *config.VolumeConfiguration, s conversion.Scope) error { + if err := v1.Convert_Pointer_bool_To_bool(&in.EnableHostPathProvisioning, &out.EnableHostPathProvisioning, s); err != nil { + return err + } + if err := v1.Convert_Pointer_bool_To_bool(&in.EnableDynamicProvisioning, &out.EnableDynamicProvisioning, s); err != nil { + return err + } + if err := Convert_v1alpha1_PersistentVolumeRecyclerConfiguration_To_config_PersistentVolumeRecyclerConfiguration(&in.PersistentVolumeRecyclerConfiguration, &out.PersistentVolumeRecyclerConfiguration, s); err != nil { + return err + } + out.FlexVolumePluginDir = in.FlexVolumePluginDir + return nil +} + +// Convert_v1alpha1_VolumeConfiguration_To_config_VolumeConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_VolumeConfiguration_To_config_VolumeConfiguration(in *v1alpha1.VolumeConfiguration, out *config.VolumeConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_VolumeConfiguration_To_config_VolumeConfiguration(in, out, s) +} + +func autoConvert_config_VolumeConfiguration_To_v1alpha1_VolumeConfiguration(in *config.VolumeConfiguration, out *v1alpha1.VolumeConfiguration, s conversion.Scope) error { + if err := v1.Convert_bool_To_Pointer_bool(&in.EnableHostPathProvisioning, &out.EnableHostPathProvisioning, s); err != nil { + return err + } + if err := v1.Convert_bool_To_Pointer_bool(&in.EnableDynamicProvisioning, &out.EnableDynamicProvisioning, s); err != nil { + return err + } + if err := Convert_config_PersistentVolumeRecyclerConfiguration_To_v1alpha1_PersistentVolumeRecyclerConfiguration(&in.PersistentVolumeRecyclerConfiguration, &out.PersistentVolumeRecyclerConfiguration, s); err != nil { + return err + } + out.FlexVolumePluginDir = in.FlexVolumePluginDir + return nil +} + +// Convert_config_VolumeConfiguration_To_v1alpha1_VolumeConfiguration is an autogenerated conversion function. +func Convert_config_VolumeConfiguration_To_v1alpha1_VolumeConfiguration(in *config.VolumeConfiguration, out *v1alpha1.VolumeConfiguration, s conversion.Scope) error { + return autoConvert_config_VolumeConfiguration_To_v1alpha1_VolumeConfiguration(in, out, s) +} diff --git a/pkg/controller/apis/config/v1alpha1/zz_generated.defaults.go b/pkg/controller/apis/config/v1alpha1/zz_generated.defaults.go new file mode 100644 index 00000000000..0aa292f26ce --- /dev/null +++ b/pkg/controller/apis/config/v1alpha1/zz_generated.defaults.go @@ -0,0 +1,57 @@ +// +build !ignore_autogenerated + +/* +Copyright The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by defaulter-gen. DO NOT EDIT. + +package v1alpha1 + +import ( + runtime "k8s.io/apimachinery/pkg/runtime" + v1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1" +) + +// RegisterDefaults adds defaulters functions to the given scheme. +// Public to allow building arbitrary schemes. +// All generated defaulters are covering - they call all nested defaulters. +func RegisterDefaults(scheme *runtime.Scheme) error { + scheme.AddTypeDefaultingFunc(&v1alpha1.KubeControllerManagerConfiguration{}, func(obj interface{}) { + SetObjectDefaults_KubeControllerManagerConfiguration(obj.(*v1alpha1.KubeControllerManagerConfiguration)) + }) + return nil +} + +func SetObjectDefaults_KubeControllerManagerConfiguration(in *v1alpha1.KubeControllerManagerConfiguration) { + SetDefaults_KubeControllerManagerConfiguration(in) + SetDefaults_KubeCloudSharedConfiguration(&in.KubeCloudShared) + SetDefaults_CSRSigningControllerConfiguration(&in.CSRSigningController) + SetDefaults_DaemonSetControllerConfiguration(&in.DaemonSetController) + SetDefaults_DeploymentControllerConfiguration(&in.DeploymentController) + SetDefaults_EndpointControllerConfiguration(&in.EndpointController) + SetDefaults_GarbageCollectorControllerConfiguration(&in.GarbageCollectorController) + SetDefaults_HPAControllerConfiguration(&in.HPAController) + SetDefaults_JobControllerConfiguration(&in.JobController) + SetDefaults_NamespaceControllerConfiguration(&in.NamespaceController) + SetDefaults_NodeLifecycleControllerConfiguration(&in.NodeLifecycleController) + SetDefaults_VolumeConfiguration(&in.PersistentVolumeBinderController.VolumeConfiguration) + SetDefaults_PersistentVolumeRecyclerConfiguration(&in.PersistentVolumeBinderController.VolumeConfiguration.PersistentVolumeRecyclerConfiguration) + SetDefaults_PodGCControllerConfiguration(&in.PodGCController) + SetDefaults_ReplicaSetControllerConfiguration(&in.ReplicaSetController) + SetDefaults_ReplicationControllerConfiguration(&in.ReplicationController) + SetDefaults_ResourceQuotaControllerConfiguration(&in.ResourceQuotaController) + SetDefaults_ServiceControllerConfiguration(&in.ServiceController) +} diff --git a/pkg/controller/apis/config/zz_generated.deepcopy.go b/pkg/controller/apis/config/zz_generated.deepcopy.go new file mode 100644 index 00000000000..a859a3ef830 --- /dev/null +++ b/pkg/controller/apis/config/zz_generated.deepcopy.go @@ -0,0 +1,507 @@ +// +build !ignore_autogenerated + +/* +Copyright The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by deepcopy-gen. DO NOT EDIT. + +package config + +import ( + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AttachDetachControllerConfiguration) DeepCopyInto(out *AttachDetachControllerConfiguration) { + *out = *in + out.ReconcilerSyncLoopPeriod = in.ReconcilerSyncLoopPeriod + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachDetachControllerConfiguration. +func (in *AttachDetachControllerConfiguration) DeepCopy() *AttachDetachControllerConfiguration { + if in == nil { + return nil + } + out := new(AttachDetachControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CSRSigningControllerConfiguration) DeepCopyInto(out *CSRSigningControllerConfiguration) { + *out = *in + out.ClusterSigningDuration = in.ClusterSigningDuration + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSRSigningControllerConfiguration. +func (in *CSRSigningControllerConfiguration) DeepCopy() *CSRSigningControllerConfiguration { + if in == nil { + return nil + } + out := new(CSRSigningControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CloudProviderConfiguration) DeepCopyInto(out *CloudProviderConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProviderConfiguration. +func (in *CloudProviderConfiguration) DeepCopy() *CloudProviderConfiguration { + if in == nil { + return nil + } + out := new(CloudProviderConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DaemonSetControllerConfiguration) DeepCopyInto(out *DaemonSetControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DaemonSetControllerConfiguration. +func (in *DaemonSetControllerConfiguration) DeepCopy() *DaemonSetControllerConfiguration { + if in == nil { + return nil + } + out := new(DaemonSetControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeploymentControllerConfiguration) DeepCopyInto(out *DeploymentControllerConfiguration) { + *out = *in + out.DeploymentControllerSyncPeriod = in.DeploymentControllerSyncPeriod + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentControllerConfiguration. +func (in *DeploymentControllerConfiguration) DeepCopy() *DeploymentControllerConfiguration { + if in == nil { + return nil + } + out := new(DeploymentControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeprecatedControllerConfiguration) DeepCopyInto(out *DeprecatedControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeprecatedControllerConfiguration. +func (in *DeprecatedControllerConfiguration) DeepCopy() *DeprecatedControllerConfiguration { + if in == nil { + return nil + } + out := new(DeprecatedControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointControllerConfiguration) DeepCopyInto(out *EndpointControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointControllerConfiguration. +func (in *EndpointControllerConfiguration) DeepCopy() *EndpointControllerConfiguration { + if in == nil { + return nil + } + out := new(EndpointControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GarbageCollectorControllerConfiguration) DeepCopyInto(out *GarbageCollectorControllerConfiguration) { + *out = *in + if in.GCIgnoredResources != nil { + in, out := &in.GCIgnoredResources, &out.GCIgnoredResources + *out = make([]GroupResource, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GarbageCollectorControllerConfiguration. +func (in *GarbageCollectorControllerConfiguration) DeepCopy() *GarbageCollectorControllerConfiguration { + if in == nil { + return nil + } + out := new(GarbageCollectorControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GenericControllerManagerConfiguration) DeepCopyInto(out *GenericControllerManagerConfiguration) { + *out = *in + out.MinResyncPeriod = in.MinResyncPeriod + out.ClientConnection = in.ClientConnection + out.ControllerStartInterval = in.ControllerStartInterval + out.LeaderElection = in.LeaderElection + if in.Controllers != nil { + in, out := &in.Controllers, &out.Controllers + *out = make([]string, len(*in)) + copy(*out, *in) + } + out.Debugging = in.Debugging + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericControllerManagerConfiguration. +func (in *GenericControllerManagerConfiguration) DeepCopy() *GenericControllerManagerConfiguration { + if in == nil { + return nil + } + out := new(GenericControllerManagerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GroupResource) DeepCopyInto(out *GroupResource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupResource. +func (in *GroupResource) DeepCopy() *GroupResource { + if in == nil { + return nil + } + out := new(GroupResource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPAControllerConfiguration) DeepCopyInto(out *HPAControllerConfiguration) { + *out = *in + out.HorizontalPodAutoscalerSyncPeriod = in.HorizontalPodAutoscalerSyncPeriod + out.HorizontalPodAutoscalerUpscaleForbiddenWindow = in.HorizontalPodAutoscalerUpscaleForbiddenWindow + out.HorizontalPodAutoscalerDownscaleForbiddenWindow = in.HorizontalPodAutoscalerDownscaleForbiddenWindow + out.HorizontalPodAutoscalerDownscaleStabilizationWindow = in.HorizontalPodAutoscalerDownscaleStabilizationWindow + out.HorizontalPodAutoscalerCPUInitializationPeriod = in.HorizontalPodAutoscalerCPUInitializationPeriod + out.HorizontalPodAutoscalerInitialReadinessDelay = in.HorizontalPodAutoscalerInitialReadinessDelay + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPAControllerConfiguration. +func (in *HPAControllerConfiguration) DeepCopy() *HPAControllerConfiguration { + if in == nil { + return nil + } + out := new(HPAControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *JobControllerConfiguration) DeepCopyInto(out *JobControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobControllerConfiguration. +func (in *JobControllerConfiguration) DeepCopy() *JobControllerConfiguration { + if in == nil { + return nil + } + out := new(JobControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubeCloudSharedConfiguration) DeepCopyInto(out *KubeCloudSharedConfiguration) { + *out = *in + out.CloudProvider = in.CloudProvider + out.RouteReconciliationPeriod = in.RouteReconciliationPeriod + out.NodeMonitorPeriod = in.NodeMonitorPeriod + out.NodeSyncPeriod = in.NodeSyncPeriod + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeCloudSharedConfiguration. +func (in *KubeCloudSharedConfiguration) DeepCopy() *KubeCloudSharedConfiguration { + if in == nil { + return nil + } + out := new(KubeCloudSharedConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubeControllerManagerConfiguration) DeepCopyInto(out *KubeControllerManagerConfiguration) { + *out = *in + out.TypeMeta = in.TypeMeta + in.Generic.DeepCopyInto(&out.Generic) + out.KubeCloudShared = in.KubeCloudShared + out.AttachDetachController = in.AttachDetachController + out.CSRSigningController = in.CSRSigningController + out.DaemonSetController = in.DaemonSetController + out.DeploymentController = in.DeploymentController + out.DeprecatedController = in.DeprecatedController + out.EndpointController = in.EndpointController + in.GarbageCollectorController.DeepCopyInto(&out.GarbageCollectorController) + out.HPAController = in.HPAController + out.JobController = in.JobController + out.NamespaceController = in.NamespaceController + out.NodeIPAMController = in.NodeIPAMController + out.NodeLifecycleController = in.NodeLifecycleController + out.PersistentVolumeBinderController = in.PersistentVolumeBinderController + out.PodGCController = in.PodGCController + out.ReplicaSetController = in.ReplicaSetController + out.ReplicationController = in.ReplicationController + out.ResourceQuotaController = in.ResourceQuotaController + out.SAController = in.SAController + out.ServiceController = in.ServiceController + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeControllerManagerConfiguration. +func (in *KubeControllerManagerConfiguration) DeepCopy() *KubeControllerManagerConfiguration { + if in == nil { + return nil + } + out := new(KubeControllerManagerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *KubeControllerManagerConfiguration) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceControllerConfiguration) DeepCopyInto(out *NamespaceControllerConfiguration) { + *out = *in + out.NamespaceSyncPeriod = in.NamespaceSyncPeriod + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceControllerConfiguration. +func (in *NamespaceControllerConfiguration) DeepCopy() *NamespaceControllerConfiguration { + if in == nil { + return nil + } + out := new(NamespaceControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeIPAMControllerConfiguration) DeepCopyInto(out *NodeIPAMControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeIPAMControllerConfiguration. +func (in *NodeIPAMControllerConfiguration) DeepCopy() *NodeIPAMControllerConfiguration { + if in == nil { + return nil + } + out := new(NodeIPAMControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeLifecycleControllerConfiguration) DeepCopyInto(out *NodeLifecycleControllerConfiguration) { + *out = *in + out.NodeStartupGracePeriod = in.NodeStartupGracePeriod + out.NodeMonitorGracePeriod = in.NodeMonitorGracePeriod + out.PodEvictionTimeout = in.PodEvictionTimeout + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeLifecycleControllerConfiguration. +func (in *NodeLifecycleControllerConfiguration) DeepCopy() *NodeLifecycleControllerConfiguration { + if in == nil { + return nil + } + out := new(NodeLifecycleControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeBinderControllerConfiguration) DeepCopyInto(out *PersistentVolumeBinderControllerConfiguration) { + *out = *in + out.PVClaimBinderSyncPeriod = in.PVClaimBinderSyncPeriod + out.VolumeConfiguration = in.VolumeConfiguration + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeBinderControllerConfiguration. +func (in *PersistentVolumeBinderControllerConfiguration) DeepCopy() *PersistentVolumeBinderControllerConfiguration { + if in == nil { + return nil + } + out := new(PersistentVolumeBinderControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeRecyclerConfiguration) DeepCopyInto(out *PersistentVolumeRecyclerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeRecyclerConfiguration. +func (in *PersistentVolumeRecyclerConfiguration) DeepCopy() *PersistentVolumeRecyclerConfiguration { + if in == nil { + return nil + } + out := new(PersistentVolumeRecyclerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodGCControllerConfiguration) DeepCopyInto(out *PodGCControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodGCControllerConfiguration. +func (in *PodGCControllerConfiguration) DeepCopy() *PodGCControllerConfiguration { + if in == nil { + return nil + } + out := new(PodGCControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicaSetControllerConfiguration) DeepCopyInto(out *ReplicaSetControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicaSetControllerConfiguration. +func (in *ReplicaSetControllerConfiguration) DeepCopy() *ReplicaSetControllerConfiguration { + if in == nil { + return nil + } + out := new(ReplicaSetControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationControllerConfiguration) DeepCopyInto(out *ReplicationControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerConfiguration. +func (in *ReplicationControllerConfiguration) DeepCopy() *ReplicationControllerConfiguration { + if in == nil { + return nil + } + out := new(ReplicationControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceQuotaControllerConfiguration) DeepCopyInto(out *ResourceQuotaControllerConfiguration) { + *out = *in + out.ResourceQuotaSyncPeriod = in.ResourceQuotaSyncPeriod + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuotaControllerConfiguration. +func (in *ResourceQuotaControllerConfiguration) DeepCopy() *ResourceQuotaControllerConfiguration { + if in == nil { + return nil + } + out := new(ResourceQuotaControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SAControllerConfiguration) DeepCopyInto(out *SAControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SAControllerConfiguration. +func (in *SAControllerConfiguration) DeepCopy() *SAControllerConfiguration { + if in == nil { + return nil + } + out := new(SAControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceControllerConfiguration) DeepCopyInto(out *ServiceControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceControllerConfiguration. +func (in *ServiceControllerConfiguration) DeepCopy() *ServiceControllerConfiguration { + if in == nil { + return nil + } + out := new(ServiceControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VolumeConfiguration) DeepCopyInto(out *VolumeConfiguration) { + *out = *in + out.PersistentVolumeRecyclerConfiguration = in.PersistentVolumeRecyclerConfiguration + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeConfiguration. +func (in *VolumeConfiguration) DeepCopy() *VolumeConfiguration { + if in == nil { + return nil + } + out := new(VolumeConfiguration) + in.DeepCopyInto(out) + return out +} diff --git a/pkg/generated/openapi/BUILD b/pkg/generated/openapi/BUILD index a76b1be5e0f..07b7df094c6 100644 --- a/pkg/generated/openapi/BUILD +++ b/pkg/generated/openapi/BUILD @@ -71,6 +71,7 @@ openapi_library( "k8s.io/csi-api/pkg/apis/csi/v1alpha1", "k8s.io/kube-aggregator/pkg/apis/apiregistration/v1", "k8s.io/kube-aggregator/pkg/apis/apiregistration/v1beta1", + "k8s.io/kube-controller-manager/config/v1alpha1", "k8s.io/kubelet/config/v1beta1", "k8s.io/metrics/pkg/apis/custom_metrics/v1beta1", "k8s.io/metrics/pkg/apis/custom_metrics/v1beta2", diff --git a/staging/src/BUILD b/staging/src/BUILD index 9fe60148a1f..31e4f9ca529 100644 --- a/staging/src/BUILD +++ b/staging/src/BUILD @@ -207,6 +207,7 @@ filegroup( "//staging/src/k8s.io/csi-api/pkg/client/informers/externalversions:all-srcs", "//staging/src/k8s.io/csi-api/pkg/client/listers/csi/v1alpha1:all-srcs", "//staging/src/k8s.io/kube-aggregator:all-srcs", + "//staging/src/k8s.io/kube-controller-manager/config/v1alpha1:all-srcs", "//staging/src/k8s.io/kube-proxy/config/v1alpha1:all-srcs", "//staging/src/k8s.io/kube-scheduler/config/v1alpha1:all-srcs", "//staging/src/k8s.io/kubelet/config/v1beta1:all-srcs", diff --git a/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/BUILD b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/BUILD new file mode 100644 index 00000000000..8ad6dcdc5d5 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/BUILD @@ -0,0 +1,35 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library") + +go_library( + name = "go_default_library", + srcs = [ + "doc.go", + "register.go", + "types.go", + "zz_generated.deepcopy.go", + ], + importmap = "k8s.io/kubernetes/vendor/k8s.io/kube-controller-manager/config/v1alpha1", + importpath = "k8s.io/kube-controller-manager/config/v1alpha1", + visibility = ["//visibility:public"], + deps = [ + "//staging/src/k8s.io/apimachinery/pkg/apis/config/v1alpha1:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library", + "//staging/src/k8s.io/apiserver/pkg/apis/config/v1alpha1:go_default_library", + ], +) + +filegroup( + name = "package-srcs", + srcs = glob(["**"]), + tags = ["automanaged"], + visibility = ["//visibility:private"], +) + +filegroup( + name = "all-srcs", + srcs = [":package-srcs"], + tags = ["automanaged"], + visibility = ["//visibility:public"], +) diff --git a/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/zz_generated.deepcopy.go b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/zz_generated.deepcopy.go new file mode 100644 index 00000000000..b975a124ac5 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/config/v1alpha1/zz_generated.deepcopy.go @@ -0,0 +1,537 @@ +// +build !ignore_autogenerated + +/* +Copyright The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by deepcopy-gen. DO NOT EDIT. + +package v1alpha1 + +import ( + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AttachDetachControllerConfiguration) DeepCopyInto(out *AttachDetachControllerConfiguration) { + *out = *in + out.ReconcilerSyncLoopPeriod = in.ReconcilerSyncLoopPeriod + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachDetachControllerConfiguration. +func (in *AttachDetachControllerConfiguration) DeepCopy() *AttachDetachControllerConfiguration { + if in == nil { + return nil + } + out := new(AttachDetachControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CSRSigningControllerConfiguration) DeepCopyInto(out *CSRSigningControllerConfiguration) { + *out = *in + out.ClusterSigningDuration = in.ClusterSigningDuration + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSRSigningControllerConfiguration. +func (in *CSRSigningControllerConfiguration) DeepCopy() *CSRSigningControllerConfiguration { + if in == nil { + return nil + } + out := new(CSRSigningControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CloudProviderConfiguration) DeepCopyInto(out *CloudProviderConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProviderConfiguration. +func (in *CloudProviderConfiguration) DeepCopy() *CloudProviderConfiguration { + if in == nil { + return nil + } + out := new(CloudProviderConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DaemonSetControllerConfiguration) DeepCopyInto(out *DaemonSetControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DaemonSetControllerConfiguration. +func (in *DaemonSetControllerConfiguration) DeepCopy() *DaemonSetControllerConfiguration { + if in == nil { + return nil + } + out := new(DaemonSetControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeploymentControllerConfiguration) DeepCopyInto(out *DeploymentControllerConfiguration) { + *out = *in + out.DeploymentControllerSyncPeriod = in.DeploymentControllerSyncPeriod + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentControllerConfiguration. +func (in *DeploymentControllerConfiguration) DeepCopy() *DeploymentControllerConfiguration { + if in == nil { + return nil + } + out := new(DeploymentControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeprecatedControllerConfiguration) DeepCopyInto(out *DeprecatedControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeprecatedControllerConfiguration. +func (in *DeprecatedControllerConfiguration) DeepCopy() *DeprecatedControllerConfiguration { + if in == nil { + return nil + } + out := new(DeprecatedControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointControllerConfiguration) DeepCopyInto(out *EndpointControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointControllerConfiguration. +func (in *EndpointControllerConfiguration) DeepCopy() *EndpointControllerConfiguration { + if in == nil { + return nil + } + out := new(EndpointControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GarbageCollectorControllerConfiguration) DeepCopyInto(out *GarbageCollectorControllerConfiguration) { + *out = *in + if in.EnableGarbageCollector != nil { + in, out := &in.EnableGarbageCollector, &out.EnableGarbageCollector + *out = new(bool) + **out = **in + } + if in.GCIgnoredResources != nil { + in, out := &in.GCIgnoredResources, &out.GCIgnoredResources + *out = make([]GroupResource, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GarbageCollectorControllerConfiguration. +func (in *GarbageCollectorControllerConfiguration) DeepCopy() *GarbageCollectorControllerConfiguration { + if in == nil { + return nil + } + out := new(GarbageCollectorControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GenericControllerManagerConfiguration) DeepCopyInto(out *GenericControllerManagerConfiguration) { + *out = *in + out.MinResyncPeriod = in.MinResyncPeriod + out.ClientConnection = in.ClientConnection + out.ControllerStartInterval = in.ControllerStartInterval + in.LeaderElection.DeepCopyInto(&out.LeaderElection) + if in.Controllers != nil { + in, out := &in.Controllers, &out.Controllers + *out = make([]string, len(*in)) + copy(*out, *in) + } + out.Debugging = in.Debugging + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericControllerManagerConfiguration. +func (in *GenericControllerManagerConfiguration) DeepCopy() *GenericControllerManagerConfiguration { + if in == nil { + return nil + } + out := new(GenericControllerManagerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GroupResource) DeepCopyInto(out *GroupResource) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupResource. +func (in *GroupResource) DeepCopy() *GroupResource { + if in == nil { + return nil + } + out := new(GroupResource) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPAControllerConfiguration) DeepCopyInto(out *HPAControllerConfiguration) { + *out = *in + out.HorizontalPodAutoscalerSyncPeriod = in.HorizontalPodAutoscalerSyncPeriod + out.HorizontalPodAutoscalerUpscaleForbiddenWindow = in.HorizontalPodAutoscalerUpscaleForbiddenWindow + out.HorizontalPodAutoscalerDownscaleStabilizationWindow = in.HorizontalPodAutoscalerDownscaleStabilizationWindow + out.HorizontalPodAutoscalerDownscaleForbiddenWindow = in.HorizontalPodAutoscalerDownscaleForbiddenWindow + if in.HorizontalPodAutoscalerUseRESTClients != nil { + in, out := &in.HorizontalPodAutoscalerUseRESTClients, &out.HorizontalPodAutoscalerUseRESTClients + *out = new(bool) + **out = **in + } + out.HorizontalPodAutoscalerCPUInitializationPeriod = in.HorizontalPodAutoscalerCPUInitializationPeriod + out.HorizontalPodAutoscalerInitialReadinessDelay = in.HorizontalPodAutoscalerInitialReadinessDelay + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPAControllerConfiguration. +func (in *HPAControllerConfiguration) DeepCopy() *HPAControllerConfiguration { + if in == nil { + return nil + } + out := new(HPAControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *JobControllerConfiguration) DeepCopyInto(out *JobControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobControllerConfiguration. +func (in *JobControllerConfiguration) DeepCopy() *JobControllerConfiguration { + if in == nil { + return nil + } + out := new(JobControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubeCloudSharedConfiguration) DeepCopyInto(out *KubeCloudSharedConfiguration) { + *out = *in + out.CloudProvider = in.CloudProvider + out.RouteReconciliationPeriod = in.RouteReconciliationPeriod + out.NodeMonitorPeriod = in.NodeMonitorPeriod + if in.ConfigureCloudRoutes != nil { + in, out := &in.ConfigureCloudRoutes, &out.ConfigureCloudRoutes + *out = new(bool) + **out = **in + } + out.NodeSyncPeriod = in.NodeSyncPeriod + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeCloudSharedConfiguration. +func (in *KubeCloudSharedConfiguration) DeepCopy() *KubeCloudSharedConfiguration { + if in == nil { + return nil + } + out := new(KubeCloudSharedConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubeControllerManagerConfiguration) DeepCopyInto(out *KubeControllerManagerConfiguration) { + *out = *in + out.TypeMeta = in.TypeMeta + in.Generic.DeepCopyInto(&out.Generic) + in.KubeCloudShared.DeepCopyInto(&out.KubeCloudShared) + out.AttachDetachController = in.AttachDetachController + out.CSRSigningController = in.CSRSigningController + out.DaemonSetController = in.DaemonSetController + out.DeploymentController = in.DeploymentController + out.DeprecatedController = in.DeprecatedController + out.EndpointController = in.EndpointController + in.GarbageCollectorController.DeepCopyInto(&out.GarbageCollectorController) + in.HPAController.DeepCopyInto(&out.HPAController) + out.JobController = in.JobController + out.NamespaceController = in.NamespaceController + out.NodeIPAMController = in.NodeIPAMController + in.NodeLifecycleController.DeepCopyInto(&out.NodeLifecycleController) + in.PersistentVolumeBinderController.DeepCopyInto(&out.PersistentVolumeBinderController) + out.PodGCController = in.PodGCController + out.ReplicaSetController = in.ReplicaSetController + out.ReplicationController = in.ReplicationController + out.ResourceQuotaController = in.ResourceQuotaController + out.SAController = in.SAController + out.ServiceController = in.ServiceController + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeControllerManagerConfiguration. +func (in *KubeControllerManagerConfiguration) DeepCopy() *KubeControllerManagerConfiguration { + if in == nil { + return nil + } + out := new(KubeControllerManagerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *KubeControllerManagerConfiguration) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceControllerConfiguration) DeepCopyInto(out *NamespaceControllerConfiguration) { + *out = *in + out.NamespaceSyncPeriod = in.NamespaceSyncPeriod + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceControllerConfiguration. +func (in *NamespaceControllerConfiguration) DeepCopy() *NamespaceControllerConfiguration { + if in == nil { + return nil + } + out := new(NamespaceControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeIPAMControllerConfiguration) DeepCopyInto(out *NodeIPAMControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeIPAMControllerConfiguration. +func (in *NodeIPAMControllerConfiguration) DeepCopy() *NodeIPAMControllerConfiguration { + if in == nil { + return nil + } + out := new(NodeIPAMControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeLifecycleControllerConfiguration) DeepCopyInto(out *NodeLifecycleControllerConfiguration) { + *out = *in + if in.EnableTaintManager != nil { + in, out := &in.EnableTaintManager, &out.EnableTaintManager + *out = new(bool) + **out = **in + } + out.NodeStartupGracePeriod = in.NodeStartupGracePeriod + out.NodeMonitorGracePeriod = in.NodeMonitorGracePeriod + out.PodEvictionTimeout = in.PodEvictionTimeout + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeLifecycleControllerConfiguration. +func (in *NodeLifecycleControllerConfiguration) DeepCopy() *NodeLifecycleControllerConfiguration { + if in == nil { + return nil + } + out := new(NodeLifecycleControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeBinderControllerConfiguration) DeepCopyInto(out *PersistentVolumeBinderControllerConfiguration) { + *out = *in + out.PVClaimBinderSyncPeriod = in.PVClaimBinderSyncPeriod + in.VolumeConfiguration.DeepCopyInto(&out.VolumeConfiguration) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeBinderControllerConfiguration. +func (in *PersistentVolumeBinderControllerConfiguration) DeepCopy() *PersistentVolumeBinderControllerConfiguration { + if in == nil { + return nil + } + out := new(PersistentVolumeBinderControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentVolumeRecyclerConfiguration) DeepCopyInto(out *PersistentVolumeRecyclerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeRecyclerConfiguration. +func (in *PersistentVolumeRecyclerConfiguration) DeepCopy() *PersistentVolumeRecyclerConfiguration { + if in == nil { + return nil + } + out := new(PersistentVolumeRecyclerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PodGCControllerConfiguration) DeepCopyInto(out *PodGCControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodGCControllerConfiguration. +func (in *PodGCControllerConfiguration) DeepCopy() *PodGCControllerConfiguration { + if in == nil { + return nil + } + out := new(PodGCControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicaSetControllerConfiguration) DeepCopyInto(out *ReplicaSetControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicaSetControllerConfiguration. +func (in *ReplicaSetControllerConfiguration) DeepCopy() *ReplicaSetControllerConfiguration { + if in == nil { + return nil + } + out := new(ReplicaSetControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReplicationControllerConfiguration) DeepCopyInto(out *ReplicationControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReplicationControllerConfiguration. +func (in *ReplicationControllerConfiguration) DeepCopy() *ReplicationControllerConfiguration { + if in == nil { + return nil + } + out := new(ReplicationControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceQuotaControllerConfiguration) DeepCopyInto(out *ResourceQuotaControllerConfiguration) { + *out = *in + out.ResourceQuotaSyncPeriod = in.ResourceQuotaSyncPeriod + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceQuotaControllerConfiguration. +func (in *ResourceQuotaControllerConfiguration) DeepCopy() *ResourceQuotaControllerConfiguration { + if in == nil { + return nil + } + out := new(ResourceQuotaControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SAControllerConfiguration) DeepCopyInto(out *SAControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SAControllerConfiguration. +func (in *SAControllerConfiguration) DeepCopy() *SAControllerConfiguration { + if in == nil { + return nil + } + out := new(SAControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceControllerConfiguration) DeepCopyInto(out *ServiceControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceControllerConfiguration. +func (in *ServiceControllerConfiguration) DeepCopy() *ServiceControllerConfiguration { + if in == nil { + return nil + } + out := new(ServiceControllerConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VolumeConfiguration) DeepCopyInto(out *VolumeConfiguration) { + *out = *in + if in.EnableHostPathProvisioning != nil { + in, out := &in.EnableHostPathProvisioning, &out.EnableHostPathProvisioning + *out = new(bool) + **out = **in + } + if in.EnableDynamicProvisioning != nil { + in, out := &in.EnableDynamicProvisioning, &out.EnableDynamicProvisioning + *out = new(bool) + **out = **in + } + out.PersistentVolumeRecyclerConfiguration = in.PersistentVolumeRecyclerConfiguration + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeConfiguration. +func (in *VolumeConfiguration) DeepCopy() *VolumeConfiguration { + if in == nil { + return nil + } + out := new(VolumeConfiguration) + in.DeepCopyInto(out) + return out +} From 3fd3e40803776a54613739274ba6cbb5df47b00b Mon Sep 17 00:00:00 2001 From: stewart-yu Date: Wed, 29 Aug 2018 10:44:06 +0800 Subject: [PATCH 8/8] add OWNERS file --- pkg/controller/apis/config/OWNERS | 14 ++++++++++++++ staging/src/k8s.io/kube-controller-manager/OWNERS | 14 ++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 pkg/controller/apis/config/OWNERS create mode 100644 staging/src/k8s.io/kube-controller-manager/OWNERS diff --git a/pkg/controller/apis/config/OWNERS b/pkg/controller/apis/config/OWNERS new file mode 100644 index 00000000000..e3149dc3c06 --- /dev/null +++ b/pkg/controller/apis/config/OWNERS @@ -0,0 +1,14 @@ +approvers: +- api-approvers +- deads2k +- luxas +- mtaufen +- sttts +- stewart-yu +reviewers: +- api-reviewers +- deads2k +- luxas +- mtaufen +- sttts +- stewart-yu diff --git a/staging/src/k8s.io/kube-controller-manager/OWNERS b/staging/src/k8s.io/kube-controller-manager/OWNERS new file mode 100644 index 00000000000..e3149dc3c06 --- /dev/null +++ b/staging/src/k8s.io/kube-controller-manager/OWNERS @@ -0,0 +1,14 @@ +approvers: +- api-approvers +- deads2k +- luxas +- mtaufen +- sttts +- stewart-yu +reviewers: +- api-reviewers +- deads2k +- luxas +- mtaufen +- sttts +- stewart-yu