mirror of https://github.com/k3s-io/k3s
get rid of copied fields in the options and using wraped componentconfig fields
parent
3478647333
commit
5b43a24318
|
@ -24,8 +24,7 @@ import (
|
|||
|
||||
// CloudProviderOptions holds the cloudprovider options.
|
||||
type CloudProviderOptions struct {
|
||||
CloudConfigFile string
|
||||
Name string
|
||||
*kubectrlmgrconfig.CloudProviderConfiguration
|
||||
}
|
||||
|
||||
// Validate checks validation of cloudprovider options.
|
||||
|
|
|
@ -24,8 +24,7 @@ import (
|
|||
|
||||
// DebuggingOptions holds the Debugging options.
|
||||
type DebuggingOptions struct {
|
||||
EnableProfiling bool
|
||||
EnableContentionProfiling bool
|
||||
*componentbaseconfig.DebuggingConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to debugging for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -20,7 +20,6 @@ import (
|
|||
"fmt"
|
||||
"strings"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/util/sets"
|
||||
apiserverflag "k8s.io/apiserver/pkg/util/flag"
|
||||
componentbaseconfig "k8s.io/component-base/config"
|
||||
|
@ -30,29 +29,19 @@ import (
|
|||
|
||||
// GenericControllerManagerConfigurationOptions holds the options which are generic.
|
||||
type GenericControllerManagerConfigurationOptions struct {
|
||||
Port int32
|
||||
Address string
|
||||
MinResyncPeriod metav1.Duration
|
||||
ClientConnection componentbaseconfig.ClientConnectionConfiguration
|
||||
ControllerStartInterval metav1.Duration
|
||||
LeaderElection componentbaseconfig.LeaderElectionConfiguration
|
||||
*kubectrlmgrconfig.GenericControllerManagerConfiguration
|
||||
Debugging *DebuggingOptions
|
||||
Controllers []string
|
||||
}
|
||||
|
||||
// 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 kubectrlmgrconfig.GenericControllerManagerConfiguration) *GenericControllerManagerConfigurationOptions {
|
||||
func NewGenericControllerManagerConfigurationOptions(cfg *kubectrlmgrconfig.GenericControllerManagerConfiguration) *GenericControllerManagerConfigurationOptions {
|
||||
o := &GenericControllerManagerConfigurationOptions{
|
||||
Port: cfg.Port,
|
||||
Address: cfg.Address,
|
||||
MinResyncPeriod: cfg.MinResyncPeriod,
|
||||
ClientConnection: cfg.ClientConnection,
|
||||
ControllerStartInterval: cfg.ControllerStartInterval,
|
||||
LeaderElection: cfg.LeaderElection,
|
||||
Debugging: &DebuggingOptions{},
|
||||
Controllers: cfg.Controllers,
|
||||
GenericControllerManagerConfiguration: cfg,
|
||||
Debugging: &DebuggingOptions{
|
||||
DebuggingConfiguration: &componentbaseconfig.DebuggingConfiguration{},
|
||||
},
|
||||
}
|
||||
|
||||
return o
|
||||
|
|
|
@ -19,39 +19,25 @@ package options
|
|||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
)
|
||||
|
||||
// KubeCloudSharedOptions holds the options shared between kube-controller-manager
|
||||
// and cloud-controller-manager.
|
||||
type KubeCloudSharedOptions struct {
|
||||
*kubectrlmgrconfig.KubeCloudSharedConfiguration
|
||||
CloudProvider *CloudProviderOptions
|
||||
ExternalCloudVolumePlugin string
|
||||
UseServiceAccountCredentials bool
|
||||
AllowUntaggedCloud bool
|
||||
RouteReconciliationPeriod metav1.Duration
|
||||
NodeMonitorPeriod metav1.Duration
|
||||
ClusterName string
|
||||
ClusterCIDR string
|
||||
AllocateNodeCIDRs bool
|
||||
CIDRAllocatorType string
|
||||
ConfigureCloudRoutes bool
|
||||
NodeSyncPeriod metav1.Duration
|
||||
}
|
||||
|
||||
// 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 kubectrlmgrconfig.KubeCloudSharedConfiguration) *KubeCloudSharedOptions {
|
||||
func NewKubeCloudSharedOptions(cfg *kubectrlmgrconfig.KubeCloudSharedConfiguration) *KubeCloudSharedOptions {
|
||||
o := &KubeCloudSharedOptions{
|
||||
CloudProvider: &CloudProviderOptions{},
|
||||
ExternalCloudVolumePlugin: cfg.ExternalCloudVolumePlugin,
|
||||
UseServiceAccountCredentials: cfg.UseServiceAccountCredentials,
|
||||
RouteReconciliationPeriod: cfg.RouteReconciliationPeriod,
|
||||
NodeMonitorPeriod: cfg.NodeMonitorPeriod,
|
||||
ClusterName: cfg.ClusterName,
|
||||
ConfigureCloudRoutes: cfg.ConfigureCloudRoutes,
|
||||
KubeCloudSharedConfiguration: cfg,
|
||||
CloudProvider: &CloudProviderOptions{
|
||||
CloudProviderConfiguration: &kubectrlmgrconfig.CloudProviderConfiguration{},
|
||||
},
|
||||
}
|
||||
|
||||
return o
|
||||
|
@ -92,6 +78,7 @@ func (o *KubeCloudSharedOptions) ApplyTo(cfg *kubectrlmgrconfig.KubeCloudSharedC
|
|||
if err := o.CloudProvider.ApplyTo(&cfg.CloudProvider); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
cfg.ExternalCloudVolumePlugin = o.ExternalCloudVolumePlugin
|
||||
cfg.UseServiceAccountCredentials = o.UseServiceAccountCredentials
|
||||
cfg.AllowUntaggedCloud = o.AllowUntaggedCloud
|
||||
|
|
|
@ -24,7 +24,7 @@ import (
|
|||
|
||||
// ServiceControllerOptions holds the ServiceController options.
|
||||
type ServiceControllerOptions struct {
|
||||
ConcurrentServiceSyncs int32
|
||||
*kubectrlmgrconfig.ServiceControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to ServiceController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -19,14 +19,12 @@ package options
|
|||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
)
|
||||
|
||||
// AttachDetachControllerOptions holds the AttachDetachController options.
|
||||
type AttachDetachControllerOptions struct {
|
||||
ReconcilerSyncLoopPeriod metav1.Duration
|
||||
DisableAttachDetachReconcilerSync bool
|
||||
*kubectrlmgrconfig.AttachDetachControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to AttachDetachController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -19,7 +19,6 @@ package options
|
|||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
)
|
||||
|
||||
|
@ -35,9 +34,7 @@ const (
|
|||
|
||||
// CSRSigningControllerOptions holds the CSRSigningController options.
|
||||
type CSRSigningControllerOptions struct {
|
||||
ClusterSigningDuration metav1.Duration
|
||||
ClusterSigningKeyFile string
|
||||
ClusterSigningCertFile string
|
||||
*kubectrlmgrconfig.CSRSigningControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to CSRSigningController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -24,7 +24,7 @@ import (
|
|||
|
||||
// DaemonSetControllerOptions holds the DaemonSetController options.
|
||||
type DaemonSetControllerOptions struct {
|
||||
ConcurrentDaemonSetSyncs int32
|
||||
*kubectrlmgrconfig.DaemonSetControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to DaemonSetController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -19,14 +19,12 @@ package options
|
|||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
)
|
||||
|
||||
// DeploymentControllerOptions holds the DeploymentController options.
|
||||
type DeploymentControllerOptions struct {
|
||||
ConcurrentDeploymentSyncs int32
|
||||
DeploymentControllerSyncPeriod metav1.Duration
|
||||
*kubectrlmgrconfig.DeploymentControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to DeploymentController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -25,9 +25,7 @@ import (
|
|||
// DeprecatedControllerOptions holds the DeprecatedController options, those option are deprecated.
|
||||
// TODO remove these fields once the deprecated flags are removed.
|
||||
type DeprecatedControllerOptions struct {
|
||||
DeletingPodsQPS float32
|
||||
DeletingPodsBurst int32
|
||||
RegisterRetryCount int32
|
||||
*kubectrlmgrconfig.DeprecatedControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to DeprecatedController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -24,7 +24,7 @@ import (
|
|||
|
||||
// EndpointControllerOptions holds the EndPointController options.
|
||||
type EndpointControllerOptions struct {
|
||||
ConcurrentEndpointSyncs int32
|
||||
*kubectrlmgrconfig.EndpointControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to EndPointController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -24,9 +24,7 @@ import (
|
|||
|
||||
// GarbageCollectorControllerOptions holds the GarbageCollectorController options.
|
||||
type GarbageCollectorControllerOptions struct {
|
||||
ConcurrentGCSyncs int32
|
||||
GCIgnoredResources []kubectrlmgrconfig.GroupResource
|
||||
EnableGarbageCollector bool
|
||||
*kubectrlmgrconfig.GarbageCollectorControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to GarbageCollectorController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -19,20 +19,12 @@ package options
|
|||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
)
|
||||
|
||||
// HPAControllerOptions holds the HPAController options.
|
||||
type HPAControllerOptions struct {
|
||||
HorizontalPodAutoscalerUseRESTClients bool
|
||||
HorizontalPodAutoscalerTolerance float64
|
||||
HorizontalPodAutoscalerDownscaleStabilizationWindow metav1.Duration
|
||||
HorizontalPodAutoscalerDownscaleForbiddenWindow metav1.Duration
|
||||
HorizontalPodAutoscalerUpscaleForbiddenWindow metav1.Duration
|
||||
HorizontalPodAutoscalerSyncPeriod metav1.Duration
|
||||
HorizontalPodAutoscalerCPUInitializationPeriod metav1.Duration
|
||||
HorizontalPodAutoscalerInitialReadinessDelay metav1.Duration
|
||||
*kubectrlmgrconfig.HPAControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to HPAController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -24,7 +24,7 @@ import (
|
|||
|
||||
// JobControllerOptions holds the JobController options.
|
||||
type JobControllerOptions struct {
|
||||
ConcurrentJobSyncs int32
|
||||
*kubectrlmgrconfig.JobControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to JobController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -19,14 +19,12 @@ package options
|
|||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
)
|
||||
|
||||
// NamespaceControllerOptions holds the NamespaceController options.
|
||||
type NamespaceControllerOptions struct {
|
||||
NamespaceSyncPeriod metav1.Duration
|
||||
ConcurrentNamespaceSyncs int32
|
||||
*kubectrlmgrconfig.NamespaceControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to NamespaceController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -24,8 +24,7 @@ import (
|
|||
|
||||
// NodeIPAMControllerOptions holds the NodeIpamController options.
|
||||
type NodeIPAMControllerOptions struct {
|
||||
ServiceCIDR string
|
||||
NodeCIDRMaskSize int32
|
||||
*kubectrlmgrconfig.NodeIPAMControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to NodeIpamController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -19,20 +19,12 @@ package options
|
|||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
)
|
||||
|
||||
// NodeLifecycleControllerOptions holds the NodeLifecycleController options.
|
||||
type NodeLifecycleControllerOptions struct {
|
||||
EnableTaintManager bool
|
||||
NodeEvictionRate float32
|
||||
SecondaryNodeEvictionRate float32
|
||||
NodeStartupGracePeriod metav1.Duration
|
||||
NodeMonitorGracePeriod metav1.Duration
|
||||
PodEvictionTimeout metav1.Duration
|
||||
LargeClusterSizeThreshold int32
|
||||
UnhealthyZoneThreshold float32
|
||||
*kubectrlmgrconfig.NodeLifecycleControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to NodeLifecycleController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -19,14 +19,12 @@ package options
|
|||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
)
|
||||
|
||||
// PersistentVolumeBinderControllerOptions holds the PersistentVolumeBinderController options.
|
||||
type PersistentVolumeBinderControllerOptions struct {
|
||||
PVClaimBinderSyncPeriod metav1.Duration
|
||||
VolumeConfiguration kubectrlmgrconfig.VolumeConfiguration
|
||||
*kubectrlmgrconfig.PersistentVolumeBinderControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to PersistentVolumeBinderController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -24,7 +24,7 @@ import (
|
|||
|
||||
// PodGCControllerOptions holds the PodGCController options.
|
||||
type PodGCControllerOptions struct {
|
||||
TerminatedPodGCThreshold int32
|
||||
*kubectrlmgrconfig.PodGCControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to PodGCController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -24,7 +24,7 @@ import (
|
|||
|
||||
// ReplicaSetControllerOptions holds the ReplicaSetController options.
|
||||
type ReplicaSetControllerOptions struct {
|
||||
ConcurrentRSSyncs int32
|
||||
*kubectrlmgrconfig.ReplicaSetControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to ReplicaSetController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -24,7 +24,7 @@ import (
|
|||
|
||||
// ReplicationControllerOptions holds the ReplicationController options.
|
||||
type ReplicationControllerOptions struct {
|
||||
ConcurrentRCSyncs int32
|
||||
*kubectrlmgrconfig.ReplicationControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to ReplicationController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -19,14 +19,12 @@ package options
|
|||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
)
|
||||
|
||||
// ResourceQuotaControllerOptions holds the ResourceQuotaController options.
|
||||
type ResourceQuotaControllerOptions struct {
|
||||
ResourceQuotaSyncPeriod metav1.Duration
|
||||
ConcurrentResourceQuotaSyncs int32
|
||||
*kubectrlmgrconfig.ResourceQuotaControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to ResourceQuotaController for controller manager to the specified FlagSet.
|
||||
|
|
|
@ -24,9 +24,7 @@ import (
|
|||
|
||||
// SAControllerOptions holds the ServiceAccountController options.
|
||||
type SAControllerOptions struct {
|
||||
ServiceAccountKeyFile string
|
||||
ConcurrentSATokenSyncs int32
|
||||
RootCAFile string
|
||||
*kubectrlmgrconfig.SAControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to ServiceAccountController for controller manager to the specified FlagSet
|
||||
|
|
|
@ -24,7 +24,7 @@ import (
|
|||
|
||||
// TTLAfterFinishedControllerOptions holds the TTLAfterFinishedController options.
|
||||
type TTLAfterFinishedControllerOptions struct {
|
||||
ConcurrentTTLSyncs int32
|
||||
*kubectrlmgrconfig.TTLAfterFinishedControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to TTLAfterFinishedController for controller manager to the specified FlagSet.
|
||||
|
|
Loading…
Reference in New Issue