Merge pull request #72800 from stewart-yu/stewart-component-base
Move config local to every controller in KCM
This commit is contained in:
commit
4499275cb9
@ -12,6 +12,7 @@ go_library(
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//pkg/controller/apis/config:go_default_library",
|
||||
"//pkg/controller/service/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",
|
||||
|
@ -19,6 +19,7 @@ package config
|
||||
import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
serviceconfig "k8s.io/kubernetes/pkg/controller/service/config"
|
||||
)
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
@ -35,7 +36,7 @@ type CloudControllerManagerConfiguration struct {
|
||||
|
||||
// ServiceControllerConfiguration holds configuration for ServiceController
|
||||
// related features.
|
||||
ServiceController kubectrlmgrconfig.ServiceControllerConfiguration
|
||||
ServiceController serviceconfig.ServiceControllerConfiguration
|
||||
|
||||
// NodeStatusUpdateFrequency is the frequency at which the controller updates nodes' status
|
||||
NodeStatusUpdateFrequency metav1.Duration
|
||||
|
@ -16,6 +16,7 @@ go_library(
|
||||
deps = [
|
||||
"//cmd/cloud-controller-manager/app/apis/config:go_default_library",
|
||||
"//pkg/controller/apis/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/service/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",
|
||||
|
@ -22,6 +22,7 @@ import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
kubectrlmgrconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1"
|
||||
serviceconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/service/config/v1alpha1"
|
||||
)
|
||||
|
||||
func addDefaultingFuncs(scheme *runtime.Scheme) error {
|
||||
@ -45,4 +46,6 @@ func SetDefaults_CloudControllerManagerConfiguration(obj *CloudControllerManager
|
||||
|
||||
// Use the default RecommendedDefaultGenericControllerManagerConfiguration options
|
||||
kubectrlmgrconfigv1alpha1.RecommendedDefaultGenericControllerManagerConfiguration(&obj.Generic)
|
||||
// Use the default RecommendedDefaultServiceControllerConfiguration options
|
||||
serviceconfigv1alpha1.RecommendedDefaultServiceControllerConfiguration(&obj.ServiceController)
|
||||
}
|
||||
|
@ -23,6 +23,7 @@ limitations under the License.
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config
|
||||
// +k8s:conversion-gen=k8s.io/component-base/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/service/config/v1alpha1
|
||||
// +k8s:openapi-gen=true
|
||||
// +k8s:defaulter-gen=TypeMeta
|
||||
// +groupName=cloudcontrollermanager.config.k8s.io
|
||||
|
@ -25,6 +25,7 @@ import (
|
||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||
config "k8s.io/kubernetes/cmd/cloud-controller-manager/app/apis/config"
|
||||
configv1alpha1 "k8s.io/kubernetes/pkg/controller/apis/config/v1alpha1"
|
||||
serviceconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/service/config/v1alpha1"
|
||||
)
|
||||
|
||||
func init() {
|
||||
@ -54,7 +55,7 @@ func autoConvert_v1alpha1_CloudControllerManagerConfiguration_To_config_CloudCon
|
||||
if err := configv1alpha1.Convert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConfiguration(&in.KubeCloudShared, &out.KubeCloudShared, s); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := configv1alpha1.Convert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil {
|
||||
if err := serviceconfigv1alpha1.Convert_v1alpha1_ServiceControllerConfiguration_To_config_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil {
|
||||
return err
|
||||
}
|
||||
out.NodeStatusUpdateFrequency = in.NodeStatusUpdateFrequency
|
||||
@ -73,7 +74,7 @@ func autoConvert_config_CloudControllerManagerConfiguration_To_v1alpha1_CloudCon
|
||||
if err := configv1alpha1.Convert_config_KubeCloudSharedConfiguration_To_v1alpha1_KubeCloudSharedConfiguration(&in.KubeCloudShared, &out.KubeCloudShared, s); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := configv1alpha1.Convert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil {
|
||||
if err := serviceconfigv1alpha1.Convert_config_ServiceControllerConfiguration_To_v1alpha1_ServiceControllerConfiguration(&in.ServiceController, &out.ServiceController, s); err != nil {
|
||||
return err
|
||||
}
|
||||
out.NodeStatusUpdateFrequency = in.NodeStatusUpdateFrequency
|
||||
|
@ -38,5 +38,4 @@ func RegisterDefaults(scheme *runtime.Scheme) error {
|
||||
func SetObjectDefaults_CloudControllerManagerConfiguration(in *CloudControllerManagerConfiguration) {
|
||||
SetDefaults_CloudControllerManagerConfiguration(in)
|
||||
configv1alpha1.SetDefaults_KubeCloudSharedConfiguration(&in.KubeCloudShared)
|
||||
configv1alpha1.SetDefaults_ServiceControllerConfiguration(&in.ServiceController)
|
||||
}
|
||||
|
@ -56,6 +56,7 @@ go_test(
|
||||
deps = [
|
||||
"//cmd/controller-manager/app/options:go_default_library",
|
||||
"//pkg/controller/apis/config:go_default_library",
|
||||
"//pkg/controller/service/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",
|
||||
"//staging/src/k8s.io/apiserver/pkg/server/options:go_default_library",
|
||||
|
@ -30,6 +30,7 @@ import (
|
||||
componentbaseconfig "k8s.io/component-base/config"
|
||||
cmoptions "k8s.io/kubernetes/cmd/controller-manager/app/options"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
serviceconfig "k8s.io/kubernetes/pkg/controller/service/config"
|
||||
)
|
||||
|
||||
func TestDefaultFlags(t *testing.T) {
|
||||
@ -80,7 +81,7 @@ func TestDefaultFlags(t *testing.T) {
|
||||
},
|
||||
},
|
||||
ServiceController: &cmoptions.ServiceControllerOptions{
|
||||
ServiceControllerConfiguration: &kubectrlmgrconfig.ServiceControllerConfiguration{
|
||||
ServiceControllerConfiguration: &serviceconfig.ServiceControllerConfiguration{
|
||||
ConcurrentServiceSyncs: 1,
|
||||
},
|
||||
},
|
||||
@ -209,7 +210,7 @@ func TestAddFlags(t *testing.T) {
|
||||
},
|
||||
},
|
||||
ServiceController: &cmoptions.ServiceControllerOptions{
|
||||
ServiceControllerConfiguration: &kubectrlmgrconfig.ServiceControllerConfiguration{
|
||||
ServiceControllerConfiguration: &serviceconfig.ServiceControllerConfiguration{
|
||||
ConcurrentServiceSyncs: 1,
|
||||
},
|
||||
},
|
||||
|
@ -14,6 +14,7 @@ go_library(
|
||||
deps = [
|
||||
"//pkg/client/leaderelectionconfig:go_default_library",
|
||||
"//pkg/controller/apis/config:go_default_library",
|
||||
"//pkg/controller/service/config:go_default_library",
|
||||
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
||||
"//staging/src/k8s.io/component-base/cli/flag:go_default_library",
|
||||
"//staging/src/k8s.io/component-base/config:go_default_library",
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
serviceconfig "k8s.io/kubernetes/pkg/controller/service/config"
|
||||
)
|
||||
|
||||
// ServiceControllerOptions holds the ServiceController options.
|
||||
type ServiceControllerOptions struct {
|
||||
*kubectrlmgrconfig.ServiceControllerConfiguration
|
||||
*serviceconfig.ServiceControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to ServiceController for controller manager to the specified FlagSet.
|
||||
@ -37,7 +37,7 @@ func (o *ServiceControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up ServiceController config with options.
|
||||
func (o *ServiceControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.ServiceControllerConfiguration) error {
|
||||
func (o *ServiceControllerOptions) ApplyTo(cfg *serviceconfig.ServiceControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -73,6 +73,7 @@ go_library(
|
||||
"//pkg/controller/volume/attachdetach:go_default_library",
|
||||
"//pkg/controller/volume/expand:go_default_library",
|
||||
"//pkg/controller/volume/persistentvolume:go_default_library",
|
||||
"//pkg/controller/volume/persistentvolume/config:go_default_library",
|
||||
"//pkg/controller/volume/pvcprotection:go_default_library",
|
||||
"//pkg/controller/volume/pvprotection:go_default_library",
|
||||
"//pkg/features:go_default_library",
|
||||
|
@ -36,7 +36,25 @@ go_library(
|
||||
"//cmd/kube-controller-manager/app/config:go_default_library",
|
||||
"//pkg/controller/apis/config:go_default_library",
|
||||
"//pkg/controller/apis/config/scheme:go_default_library",
|
||||
"//pkg/controller/certificates/signer/config:go_default_library",
|
||||
"//pkg/controller/daemon/config:go_default_library",
|
||||
"//pkg/controller/deployment/config:go_default_library",
|
||||
"//pkg/controller/endpoint/config:go_default_library",
|
||||
"//pkg/controller/garbagecollector:go_default_library",
|
||||
"//pkg/controller/garbagecollector/config:go_default_library",
|
||||
"//pkg/controller/job/config:go_default_library",
|
||||
"//pkg/controller/namespace/config:go_default_library",
|
||||
"//pkg/controller/nodeipam/config:go_default_library",
|
||||
"//pkg/controller/nodelifecycle/config:go_default_library",
|
||||
"//pkg/controller/podautoscaler/config:go_default_library",
|
||||
"//pkg/controller/podgc/config:go_default_library",
|
||||
"//pkg/controller/replicaset/config:go_default_library",
|
||||
"//pkg/controller/replication/config:go_default_library",
|
||||
"//pkg/controller/resourcequota/config:go_default_library",
|
||||
"//pkg/controller/serviceaccount/config:go_default_library",
|
||||
"//pkg/controller/ttlafterfinished/config:go_default_library",
|
||||
"//pkg/controller/volume/attachdetach/config:go_default_library",
|
||||
"//pkg/controller/volume/persistentvolume/config:go_default_library",
|
||||
"//pkg/features:go_default_library",
|
||||
"//pkg/master/ports:go_default_library",
|
||||
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
||||
@ -76,6 +94,25 @@ go_test(
|
||||
deps = [
|
||||
"//cmd/controller-manager/app/options:go_default_library",
|
||||
"//pkg/controller/apis/config:go_default_library",
|
||||
"//pkg/controller/certificates/signer/config:go_default_library",
|
||||
"//pkg/controller/daemon/config:go_default_library",
|
||||
"//pkg/controller/deployment/config:go_default_library",
|
||||
"//pkg/controller/endpoint/config:go_default_library",
|
||||
"//pkg/controller/garbagecollector/config:go_default_library",
|
||||
"//pkg/controller/job/config:go_default_library",
|
||||
"//pkg/controller/namespace/config:go_default_library",
|
||||
"//pkg/controller/nodeipam/config:go_default_library",
|
||||
"//pkg/controller/nodelifecycle/config:go_default_library",
|
||||
"//pkg/controller/podautoscaler/config:go_default_library",
|
||||
"//pkg/controller/podgc/config:go_default_library",
|
||||
"//pkg/controller/replicaset/config:go_default_library",
|
||||
"//pkg/controller/replication/config:go_default_library",
|
||||
"//pkg/controller/resourcequota/config:go_default_library",
|
||||
"//pkg/controller/service/config:go_default_library",
|
||||
"//pkg/controller/serviceaccount/config:go_default_library",
|
||||
"//pkg/controller/ttlafterfinished/config:go_default_library",
|
||||
"//pkg/controller/volume/attachdetach/config:go_default_library",
|
||||
"//pkg/controller/volume/persistentvolume/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",
|
||||
"//staging/src/k8s.io/apiserver/pkg/server/options:go_default_library",
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
attachdetachconfig "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config"
|
||||
)
|
||||
|
||||
// AttachDetachControllerOptions holds the AttachDetachController options.
|
||||
type AttachDetachControllerOptions struct {
|
||||
*kubectrlmgrconfig.AttachDetachControllerConfiguration
|
||||
*attachdetachconfig.AttachDetachControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to AttachDetachController for controller manager to the specified FlagSet.
|
||||
@ -38,7 +38,7 @@ func (o *AttachDetachControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up AttachDetachController config with options.
|
||||
func (o *AttachDetachControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.AttachDetachControllerConfiguration) error {
|
||||
func (o *AttachDetachControllerOptions) ApplyTo(cfg *attachdetachconfig.AttachDetachControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,7 +19,7 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
csrsigningconfig "k8s.io/kubernetes/pkg/controller/certificates/signer/config"
|
||||
)
|
||||
|
||||
const (
|
||||
@ -34,7 +34,7 @@ const (
|
||||
|
||||
// CSRSigningControllerOptions holds the CSRSigningController options.
|
||||
type CSRSigningControllerOptions struct {
|
||||
*kubectrlmgrconfig.CSRSigningControllerConfiguration
|
||||
*csrsigningconfig.CSRSigningControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to CSRSigningController for controller manager to the specified FlagSet.
|
||||
@ -49,7 +49,7 @@ func (o *CSRSigningControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up CSRSigningController config with options.
|
||||
func (o *CSRSigningControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.CSRSigningControllerConfiguration) error {
|
||||
func (o *CSRSigningControllerOptions) ApplyTo(cfg *csrsigningconfig.CSRSigningControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
daemonconfig "k8s.io/kubernetes/pkg/controller/daemon/config"
|
||||
)
|
||||
|
||||
// DaemonSetControllerOptions holds the DaemonSetController options.
|
||||
type DaemonSetControllerOptions struct {
|
||||
*kubectrlmgrconfig.DaemonSetControllerConfiguration
|
||||
*daemonconfig.DaemonSetControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to DaemonSetController for controller manager to the specified FlagSet.
|
||||
@ -35,7 +35,7 @@ func (o *DaemonSetControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up DaemonSetController config with options.
|
||||
func (o *DaemonSetControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.DaemonSetControllerConfiguration) error {
|
||||
func (o *DaemonSetControllerOptions) ApplyTo(cfg *daemonconfig.DaemonSetControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
deploymentconfig "k8s.io/kubernetes/pkg/controller/deployment/config"
|
||||
)
|
||||
|
||||
// DeploymentControllerOptions holds the DeploymentController options.
|
||||
type DeploymentControllerOptions struct {
|
||||
*kubectrlmgrconfig.DeploymentControllerConfiguration
|
||||
*deploymentconfig.DeploymentControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to DeploymentController for controller manager to the specified FlagSet.
|
||||
@ -38,7 +38,7 @@ func (o *DeploymentControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up DeploymentController config with options.
|
||||
func (o *DeploymentControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.DeploymentControllerConfiguration) error {
|
||||
func (o *DeploymentControllerOptions) ApplyTo(cfg *deploymentconfig.DeploymentControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
endpointconfig "k8s.io/kubernetes/pkg/controller/endpoint/config"
|
||||
)
|
||||
|
||||
// EndpointControllerOptions holds the EndPointController options.
|
||||
type EndpointControllerOptions struct {
|
||||
*kubectrlmgrconfig.EndpointControllerConfiguration
|
||||
*endpointconfig.EndpointControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to EndPointController for controller manager to the specified FlagSet.
|
||||
@ -37,7 +37,7 @@ func (o *EndpointControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up EndPointController config with options.
|
||||
func (o *EndpointControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.EndpointControllerConfiguration) error {
|
||||
func (o *EndpointControllerOptions) ApplyTo(cfg *endpointconfig.EndpointControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
garbagecollectorconfig "k8s.io/kubernetes/pkg/controller/garbagecollector/config"
|
||||
)
|
||||
|
||||
// GarbageCollectorControllerOptions holds the GarbageCollectorController options.
|
||||
type GarbageCollectorControllerOptions struct {
|
||||
*kubectrlmgrconfig.GarbageCollectorControllerConfiguration
|
||||
*garbagecollectorconfig.GarbageCollectorControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to GarbageCollectorController for controller manager to the specified FlagSet.
|
||||
@ -38,7 +38,7 @@ func (o *GarbageCollectorControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up GarbageCollectorController config with options.
|
||||
func (o *GarbageCollectorControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.GarbageCollectorControllerConfiguration) error {
|
||||
func (o *GarbageCollectorControllerOptions) ApplyTo(cfg *garbagecollectorconfig.GarbageCollectorControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
poautosclerconfig "k8s.io/kubernetes/pkg/controller/podautoscaler/config"
|
||||
)
|
||||
|
||||
// HPAControllerOptions holds the HPAController options.
|
||||
type HPAControllerOptions struct {
|
||||
*kubectrlmgrconfig.HPAControllerConfiguration
|
||||
*poautosclerconfig.HPAControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to HPAController for controller manager to the specified FlagSet.
|
||||
@ -47,7 +47,7 @@ func (o *HPAControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up HPAController config with options.
|
||||
func (o *HPAControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.HPAControllerConfiguration) error {
|
||||
func (o *HPAControllerOptions) ApplyTo(cfg *poautosclerconfig.HPAControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
jobconfig "k8s.io/kubernetes/pkg/controller/job/config"
|
||||
)
|
||||
|
||||
// JobControllerOptions holds the JobController options.
|
||||
type JobControllerOptions struct {
|
||||
*kubectrlmgrconfig.JobControllerConfiguration
|
||||
*jobconfig.JobControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to JobController for controller manager to the specified FlagSet.
|
||||
@ -35,7 +35,7 @@ func (o *JobControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up JobController config with options.
|
||||
func (o *JobControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.JobControllerConfiguration) error {
|
||||
func (o *JobControllerOptions) ApplyTo(cfg *jobconfig.JobControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
namespaceconfig "k8s.io/kubernetes/pkg/controller/namespace/config"
|
||||
)
|
||||
|
||||
// NamespaceControllerOptions holds the NamespaceController options.
|
||||
type NamespaceControllerOptions struct {
|
||||
*kubectrlmgrconfig.NamespaceControllerConfiguration
|
||||
*namespaceconfig.NamespaceControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to NamespaceController for controller manager to the specified FlagSet.
|
||||
@ -38,7 +38,7 @@ func (o *NamespaceControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up NamespaceController config with options.
|
||||
func (o *NamespaceControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.NamespaceControllerConfiguration) error {
|
||||
func (o *NamespaceControllerOptions) ApplyTo(cfg *namespaceconfig.NamespaceControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
nodeipamconfig "k8s.io/kubernetes/pkg/controller/nodeipam/config"
|
||||
)
|
||||
|
||||
// NodeIPAMControllerOptions holds the NodeIpamController options.
|
||||
type NodeIPAMControllerOptions struct {
|
||||
*kubectrlmgrconfig.NodeIPAMControllerConfiguration
|
||||
*nodeipamconfig.NodeIPAMControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to NodeIpamController for controller manager to the specified FlagSet.
|
||||
@ -38,7 +38,7 @@ func (o *NodeIPAMControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up NodeIpamController config with options.
|
||||
func (o *NodeIPAMControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.NodeIPAMControllerConfiguration) error {
|
||||
func (o *NodeIPAMControllerOptions) ApplyTo(cfg *nodeipamconfig.NodeIPAMControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
nodelifecycleconfig "k8s.io/kubernetes/pkg/controller/nodelifecycle/config"
|
||||
)
|
||||
|
||||
// NodeLifecycleControllerOptions holds the NodeLifecycleController options.
|
||||
type NodeLifecycleControllerOptions struct {
|
||||
*kubectrlmgrconfig.NodeLifecycleControllerConfiguration
|
||||
*nodelifecycleconfig.NodeLifecycleControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to NodeLifecycleController for controller manager to the specified FlagSet.
|
||||
@ -48,7 +48,7 @@ func (o *NodeLifecycleControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up NodeLifecycleController config with options.
|
||||
func (o *NodeLifecycleControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.NodeLifecycleControllerConfiguration) error {
|
||||
func (o *NodeLifecycleControllerOptions) ApplyTo(cfg *nodelifecycleconfig.NodeLifecycleControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -39,6 +39,7 @@ import (
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
kubectrlmgrconfigscheme "k8s.io/kubernetes/pkg/controller/apis/config/scheme"
|
||||
"k8s.io/kubernetes/pkg/controller/garbagecollector"
|
||||
garbagecollectorconfig "k8s.io/kubernetes/pkg/controller/garbagecollector/config"
|
||||
"k8s.io/kubernetes/pkg/master/ports"
|
||||
|
||||
// add the kubernetes feature gates
|
||||
@ -177,9 +178,9 @@ func NewKubeControllerManagerOptions() (*KubeControllerManagerOptions, error) {
|
||||
s.SecureServing.ServerCert.PairName = "kube-controller-manager"
|
||||
s.SecureServing.BindPort = ports.KubeControllerManagerPort
|
||||
|
||||
gcIgnoredResources := make([]kubectrlmgrconfig.GroupResource, 0, len(garbagecollector.DefaultIgnoredResources()))
|
||||
gcIgnoredResources := make([]garbagecollectorconfig.GroupResource, 0, len(garbagecollector.DefaultIgnoredResources()))
|
||||
for r := range garbagecollector.DefaultIgnoredResources() {
|
||||
gcIgnoredResources = append(gcIgnoredResources, kubectrlmgrconfig.GroupResource{Group: r.Group, Resource: r.Resource})
|
||||
gcIgnoredResources = append(gcIgnoredResources, garbagecollectorconfig.GroupResource{Group: r.Group, Resource: r.Resource})
|
||||
}
|
||||
|
||||
s.GarbageCollectorController.GCIgnoredResources = gcIgnoredResources
|
||||
|
@ -31,6 +31,25 @@ import (
|
||||
componentbaseconfig "k8s.io/component-base/config"
|
||||
cmoptions "k8s.io/kubernetes/cmd/controller-manager/app/options"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
csrsigningconfig "k8s.io/kubernetes/pkg/controller/certificates/signer/config"
|
||||
daemonconfig "k8s.io/kubernetes/pkg/controller/daemon/config"
|
||||
deploymentconfig "k8s.io/kubernetes/pkg/controller/deployment/config"
|
||||
endpointconfig "k8s.io/kubernetes/pkg/controller/endpoint/config"
|
||||
garbagecollectorconfig "k8s.io/kubernetes/pkg/controller/garbagecollector/config"
|
||||
jobconfig "k8s.io/kubernetes/pkg/controller/job/config"
|
||||
namespaceconfig "k8s.io/kubernetes/pkg/controller/namespace/config"
|
||||
nodeipamconfig "k8s.io/kubernetes/pkg/controller/nodeipam/config"
|
||||
nodelifecycleconfig "k8s.io/kubernetes/pkg/controller/nodelifecycle/config"
|
||||
poautosclerconfig "k8s.io/kubernetes/pkg/controller/podautoscaler/config"
|
||||
podgcconfig "k8s.io/kubernetes/pkg/controller/podgc/config"
|
||||
replicasetconfig "k8s.io/kubernetes/pkg/controller/replicaset/config"
|
||||
replicationconfig "k8s.io/kubernetes/pkg/controller/replication/config"
|
||||
resourcequotaconfig "k8s.io/kubernetes/pkg/controller/resourcequota/config"
|
||||
serviceconfig "k8s.io/kubernetes/pkg/controller/service/config"
|
||||
serviceaccountconfig "k8s.io/kubernetes/pkg/controller/serviceaccount/config"
|
||||
ttlafterfinishedconfig "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config"
|
||||
attachdetachconfig "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config"
|
||||
persistentvolumeconfig "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config"
|
||||
)
|
||||
|
||||
func TestAddFlags(t *testing.T) {
|
||||
@ -169,30 +188,30 @@ func TestAddFlags(t *testing.T) {
|
||||
},
|
||||
},
|
||||
ServiceController: &cmoptions.ServiceControllerOptions{
|
||||
ServiceControllerConfiguration: &kubectrlmgrconfig.ServiceControllerConfiguration{
|
||||
ServiceControllerConfiguration: &serviceconfig.ServiceControllerConfiguration{
|
||||
ConcurrentServiceSyncs: 2,
|
||||
},
|
||||
},
|
||||
AttachDetachController: &AttachDetachControllerOptions{
|
||||
&kubectrlmgrconfig.AttachDetachControllerConfiguration{
|
||||
&attachdetachconfig.AttachDetachControllerConfiguration{
|
||||
ReconcilerSyncLoopPeriod: metav1.Duration{Duration: 30 * time.Second},
|
||||
DisableAttachDetachReconcilerSync: true,
|
||||
},
|
||||
},
|
||||
CSRSigningController: &CSRSigningControllerOptions{
|
||||
&kubectrlmgrconfig.CSRSigningControllerConfiguration{
|
||||
&csrsigningconfig.CSRSigningControllerConfiguration{
|
||||
ClusterSigningCertFile: "/cluster-signing-cert",
|
||||
ClusterSigningKeyFile: "/cluster-signing-key",
|
||||
ClusterSigningDuration: metav1.Duration{Duration: 10 * time.Hour},
|
||||
},
|
||||
},
|
||||
DaemonSetController: &DaemonSetControllerOptions{
|
||||
&kubectrlmgrconfig.DaemonSetControllerConfiguration{
|
||||
&daemonconfig.DaemonSetControllerConfiguration{
|
||||
ConcurrentDaemonSetSyncs: 2,
|
||||
},
|
||||
},
|
||||
DeploymentController: &DeploymentControllerOptions{
|
||||
&kubectrlmgrconfig.DeploymentControllerConfiguration{
|
||||
&deploymentconfig.DeploymentControllerConfiguration{
|
||||
ConcurrentDeploymentSyncs: 10,
|
||||
DeploymentControllerSyncPeriod: metav1.Duration{Duration: 45 * time.Second},
|
||||
},
|
||||
@ -204,21 +223,21 @@ func TestAddFlags(t *testing.T) {
|
||||
},
|
||||
},
|
||||
EndpointController: &EndpointControllerOptions{
|
||||
&kubectrlmgrconfig.EndpointControllerConfiguration{
|
||||
&endpointconfig.EndpointControllerConfiguration{
|
||||
ConcurrentEndpointSyncs: 10,
|
||||
},
|
||||
},
|
||||
GarbageCollectorController: &GarbageCollectorControllerOptions{
|
||||
&kubectrlmgrconfig.GarbageCollectorControllerConfiguration{
|
||||
&garbagecollectorconfig.GarbageCollectorControllerConfiguration{
|
||||
ConcurrentGCSyncs: 30,
|
||||
GCIgnoredResources: []kubectrlmgrconfig.GroupResource{
|
||||
GCIgnoredResources: []garbagecollectorconfig.GroupResource{
|
||||
{Group: "", Resource: "events"},
|
||||
},
|
||||
EnableGarbageCollector: false,
|
||||
},
|
||||
},
|
||||
HPAController: &HPAControllerOptions{
|
||||
&kubectrlmgrconfig.HPAControllerConfiguration{
|
||||
&poautosclerconfig.HPAControllerConfiguration{
|
||||
HorizontalPodAutoscalerSyncPeriod: metav1.Duration{Duration: 45 * time.Second},
|
||||
HorizontalPodAutoscalerUpscaleForbiddenWindow: metav1.Duration{Duration: 1 * time.Minute},
|
||||
HorizontalPodAutoscalerDownscaleForbiddenWindow: metav1.Duration{Duration: 2 * time.Minute},
|
||||
@ -230,23 +249,23 @@ func TestAddFlags(t *testing.T) {
|
||||
},
|
||||
},
|
||||
JobController: &JobControllerOptions{
|
||||
&kubectrlmgrconfig.JobControllerConfiguration{
|
||||
&jobconfig.JobControllerConfiguration{
|
||||
ConcurrentJobSyncs: 5,
|
||||
},
|
||||
},
|
||||
NamespaceController: &NamespaceControllerOptions{
|
||||
&kubectrlmgrconfig.NamespaceControllerConfiguration{
|
||||
&namespaceconfig.NamespaceControllerConfiguration{
|
||||
NamespaceSyncPeriod: metav1.Duration{Duration: 10 * time.Minute},
|
||||
ConcurrentNamespaceSyncs: 20,
|
||||
},
|
||||
},
|
||||
NodeIPAMController: &NodeIPAMControllerOptions{
|
||||
&kubectrlmgrconfig.NodeIPAMControllerConfiguration{
|
||||
&nodeipamconfig.NodeIPAMControllerConfiguration{
|
||||
NodeCIDRMaskSize: 48,
|
||||
},
|
||||
},
|
||||
NodeLifecycleController: &NodeLifecycleControllerOptions{
|
||||
&kubectrlmgrconfig.NodeLifecycleControllerConfiguration{
|
||||
&nodelifecycleconfig.NodeLifecycleControllerConfiguration{
|
||||
EnableTaintManager: false,
|
||||
NodeEvictionRate: 0.2,
|
||||
SecondaryNodeEvictionRate: 0.05,
|
||||
@ -258,13 +277,13 @@ func TestAddFlags(t *testing.T) {
|
||||
},
|
||||
},
|
||||
PersistentVolumeBinderController: &PersistentVolumeBinderControllerOptions{
|
||||
&kubectrlmgrconfig.PersistentVolumeBinderControllerConfiguration{
|
||||
&persistentvolumeconfig.PersistentVolumeBinderControllerConfiguration{
|
||||
PVClaimBinderSyncPeriod: metav1.Duration{Duration: 30 * time.Second},
|
||||
VolumeConfiguration: kubectrlmgrconfig.VolumeConfiguration{
|
||||
VolumeConfiguration: persistentvolumeconfig.VolumeConfiguration{
|
||||
EnableDynamicProvisioning: false,
|
||||
EnableHostPathProvisioning: true,
|
||||
FlexVolumePluginDir: "/flex-volume-plugin",
|
||||
PersistentVolumeRecyclerConfiguration: kubectrlmgrconfig.PersistentVolumeRecyclerConfiguration{
|
||||
PersistentVolumeRecyclerConfiguration: persistentvolumeconfig.PersistentVolumeRecyclerConfiguration{
|
||||
MaximumRetry: 3,
|
||||
MinimumTimeoutNFS: 200,
|
||||
IncrementTimeoutNFS: 45,
|
||||
@ -275,34 +294,34 @@ func TestAddFlags(t *testing.T) {
|
||||
},
|
||||
},
|
||||
PodGCController: &PodGCControllerOptions{
|
||||
&kubectrlmgrconfig.PodGCControllerConfiguration{
|
||||
&podgcconfig.PodGCControllerConfiguration{
|
||||
TerminatedPodGCThreshold: 12000,
|
||||
},
|
||||
},
|
||||
ReplicaSetController: &ReplicaSetControllerOptions{
|
||||
&kubectrlmgrconfig.ReplicaSetControllerConfiguration{
|
||||
&replicasetconfig.ReplicaSetControllerConfiguration{
|
||||
ConcurrentRSSyncs: 10,
|
||||
},
|
||||
},
|
||||
ReplicationController: &ReplicationControllerOptions{
|
||||
&kubectrlmgrconfig.ReplicationControllerConfiguration{
|
||||
&replicationconfig.ReplicationControllerConfiguration{
|
||||
ConcurrentRCSyncs: 10,
|
||||
},
|
||||
},
|
||||
ResourceQuotaController: &ResourceQuotaControllerOptions{
|
||||
&kubectrlmgrconfig.ResourceQuotaControllerConfiguration{
|
||||
&resourcequotaconfig.ResourceQuotaControllerConfiguration{
|
||||
ResourceQuotaSyncPeriod: metav1.Duration{Duration: 10 * time.Minute},
|
||||
ConcurrentResourceQuotaSyncs: 10,
|
||||
},
|
||||
},
|
||||
SAController: &SAControllerOptions{
|
||||
&kubectrlmgrconfig.SAControllerConfiguration{
|
||||
&serviceaccountconfig.SAControllerConfiguration{
|
||||
ServiceAccountKeyFile: "/service-account-private-key",
|
||||
ConcurrentSATokenSyncs: 10,
|
||||
},
|
||||
},
|
||||
TTLAfterFinishedController: &TTLAfterFinishedControllerOptions{
|
||||
&kubectrlmgrconfig.TTLAfterFinishedControllerConfiguration{
|
||||
&ttlafterfinishedconfig.TTLAfterFinishedControllerConfiguration{
|
||||
ConcurrentTTLSyncs: 8,
|
||||
},
|
||||
},
|
||||
@ -349,7 +368,7 @@ func TestAddFlags(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
type sortedGCIgnoredResources []kubectrlmgrconfig.GroupResource
|
||||
type sortedGCIgnoredResources []garbagecollectorconfig.GroupResource
|
||||
|
||||
func (r sortedGCIgnoredResources) Len() int {
|
||||
return len(r)
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
persistentvolumeconfig "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config"
|
||||
)
|
||||
|
||||
// PersistentVolumeBinderControllerOptions holds the PersistentVolumeBinderController options.
|
||||
type PersistentVolumeBinderControllerOptions struct {
|
||||
*kubectrlmgrconfig.PersistentVolumeBinderControllerConfiguration
|
||||
*persistentvolumeconfig.PersistentVolumeBinderControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to PersistentVolumeBinderController for controller manager to the specified FlagSet.
|
||||
@ -46,7 +46,7 @@ func (o *PersistentVolumeBinderControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up PersistentVolumeBinderController config with options.
|
||||
func (o *PersistentVolumeBinderControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.PersistentVolumeBinderControllerConfiguration) error {
|
||||
func (o *PersistentVolumeBinderControllerOptions) ApplyTo(cfg *persistentvolumeconfig.PersistentVolumeBinderControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
podgcconfig "k8s.io/kubernetes/pkg/controller/podgc/config"
|
||||
)
|
||||
|
||||
// PodGCControllerOptions holds the PodGCController options.
|
||||
type PodGCControllerOptions struct {
|
||||
*kubectrlmgrconfig.PodGCControllerConfiguration
|
||||
*podgcconfig.PodGCControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to PodGCController for controller manager to the specified FlagSet.
|
||||
@ -37,7 +37,7 @@ func (o *PodGCControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up PodGCController config with options.
|
||||
func (o *PodGCControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.PodGCControllerConfiguration) error {
|
||||
func (o *PodGCControllerOptions) ApplyTo(cfg *podgcconfig.PodGCControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
replicasetconfig "k8s.io/kubernetes/pkg/controller/replicaset/config"
|
||||
)
|
||||
|
||||
// ReplicaSetControllerOptions holds the ReplicaSetController options.
|
||||
type ReplicaSetControllerOptions struct {
|
||||
*kubectrlmgrconfig.ReplicaSetControllerConfiguration
|
||||
*replicasetconfig.ReplicaSetControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to ReplicaSetController for controller manager to the specified FlagSet.
|
||||
@ -37,7 +37,7 @@ func (o *ReplicaSetControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up ReplicaSetController config with options.
|
||||
func (o *ReplicaSetControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.ReplicaSetControllerConfiguration) error {
|
||||
func (o *ReplicaSetControllerOptions) ApplyTo(cfg *replicasetconfig.ReplicaSetControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
replicationconfig "k8s.io/kubernetes/pkg/controller/replication/config"
|
||||
)
|
||||
|
||||
// ReplicationControllerOptions holds the ReplicationController options.
|
||||
type ReplicationControllerOptions struct {
|
||||
*kubectrlmgrconfig.ReplicationControllerConfiguration
|
||||
*replicationconfig.ReplicationControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to ReplicationController for controller manager to the specified FlagSet.
|
||||
@ -37,7 +37,7 @@ func (o *ReplicationControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up ReplicationController config with options.
|
||||
func (o *ReplicationControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.ReplicationControllerConfiguration) error {
|
||||
func (o *ReplicationControllerOptions) ApplyTo(cfg *replicationconfig.ReplicationControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
resourcequotaconfig "k8s.io/kubernetes/pkg/controller/resourcequota/config"
|
||||
)
|
||||
|
||||
// ResourceQuotaControllerOptions holds the ResourceQuotaController options.
|
||||
type ResourceQuotaControllerOptions struct {
|
||||
*kubectrlmgrconfig.ResourceQuotaControllerConfiguration
|
||||
*resourcequotaconfig.ResourceQuotaControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to ResourceQuotaController for controller manager to the specified FlagSet.
|
||||
@ -38,7 +38,7 @@ func (o *ResourceQuotaControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up ResourceQuotaController config with options.
|
||||
func (o *ResourceQuotaControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.ResourceQuotaControllerConfiguration) error {
|
||||
func (o *ResourceQuotaControllerOptions) ApplyTo(cfg *resourcequotaconfig.ResourceQuotaControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
serviceaccountconfig "k8s.io/kubernetes/pkg/controller/serviceaccount/config"
|
||||
)
|
||||
|
||||
// SAControllerOptions holds the ServiceAccountController options.
|
||||
type SAControllerOptions struct {
|
||||
*kubectrlmgrconfig.SAControllerConfiguration
|
||||
*serviceaccountconfig.SAControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to ServiceAccountController for controller manager to the specified FlagSet
|
||||
@ -39,7 +39,7 @@ func (o *SAControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up ServiceAccountController config with options.
|
||||
func (o *SAControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.SAControllerConfiguration) error {
|
||||
func (o *SAControllerOptions) ApplyTo(cfg *serviceaccountconfig.SAControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -19,12 +19,12 @@ package options
|
||||
import (
|
||||
"github.com/spf13/pflag"
|
||||
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
ttlafterfinishedconfig "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config"
|
||||
)
|
||||
|
||||
// TTLAfterFinishedControllerOptions holds the TTLAfterFinishedController options.
|
||||
type TTLAfterFinishedControllerOptions struct {
|
||||
*kubectrlmgrconfig.TTLAfterFinishedControllerConfiguration
|
||||
*ttlafterfinishedconfig.TTLAfterFinishedControllerConfiguration
|
||||
}
|
||||
|
||||
// AddFlags adds flags related to TTLAfterFinishedController for controller manager to the specified FlagSet.
|
||||
@ -37,7 +37,7 @@ func (o *TTLAfterFinishedControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||
}
|
||||
|
||||
// ApplyTo fills up TTLAfterFinishedController config with options.
|
||||
func (o *TTLAfterFinishedControllerOptions) ApplyTo(cfg *kubectrlmgrconfig.TTLAfterFinishedControllerConfiguration) error {
|
||||
func (o *TTLAfterFinishedControllerOptions) ApplyTo(cfg *ttlafterfinishedconfig.TTLAfterFinishedControllerConfiguration) error {
|
||||
if o == nil {
|
||||
return nil
|
||||
}
|
||||
|
@ -54,7 +54,7 @@ import (
|
||||
"k8s.io/kubernetes/pkg/volume/vsphere_volume"
|
||||
|
||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||
kubectrlmgrconfig "k8s.io/kubernetes/pkg/controller/apis/config"
|
||||
persistentvolumeconfig "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config"
|
||||
"k8s.io/kubernetes/pkg/features"
|
||||
"k8s.io/utils/exec"
|
||||
)
|
||||
@ -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 kubectrlmgrconfig.VolumeConfiguration) volume.DynamicPluginProber {
|
||||
func GetDynamicPluginProber(config persistentvolumeconfig.VolumeConfiguration) volume.DynamicPluginProber {
|
||||
return flexvolume.GetDynamicPluginProber(config.FlexVolumePluginDir, exec.New() /*exec.Interface*/)
|
||||
}
|
||||
|
||||
// ProbeExpandableVolumePlugins returns volume plugins which are expandable
|
||||
func ProbeExpandableVolumePlugins(config kubectrlmgrconfig.VolumeConfiguration) []volume.VolumePlugin {
|
||||
func ProbeExpandableVolumePlugins(config persistentvolumeconfig.VolumeConfiguration) []volume.VolumePlugin {
|
||||
allPlugins := []volume.VolumePlugin{}
|
||||
|
||||
allPlugins = append(allPlugins, awsebs.ProbeVolumePlugins()...)
|
||||
@ -114,7 +114,7 @@ func ProbeExpandableVolumePlugins(config kubectrlmgrconfig.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 kubectrlmgrconfig.VolumeConfiguration) []volume.VolumePlugin {
|
||||
func ProbeControllerVolumePlugins(cloud cloudprovider.Interface, config persistentvolumeconfig.VolumeConfiguration) []volume.VolumePlugin {
|
||||
allPlugins := []volume.VolumePlugin{}
|
||||
|
||||
// The list of plugins to probe is decided by this binary, not
|
||||
|
@ -78,34 +78,53 @@ pkg/controller/bootstrap
|
||||
pkg/controller/certificates
|
||||
pkg/controller/certificates/approver
|
||||
pkg/controller/certificates/signer
|
||||
pkg/controller/certificates/signer/config/v1alpha1
|
||||
pkg/controller/cloud
|
||||
pkg/controller/clusterroleaggregation
|
||||
pkg/controller/cronjob
|
||||
pkg/controller/daemon
|
||||
pkg/controller/daemon/config/v1alpha1
|
||||
pkg/controller/deployment
|
||||
pkg/controller/deployment/config/v1alpha1
|
||||
pkg/controller/disruption
|
||||
pkg/controller/endpoint
|
||||
pkg/controller/endpoint/config/v1alpha1
|
||||
pkg/controller/garbagecollector
|
||||
pkg/controller/garbagecollector/config/v1alpha1
|
||||
pkg/controller/job
|
||||
pkg/controller/job/config/v1alpha1
|
||||
pkg/controller/namespace
|
||||
pkg/controller/namespace/config/v1alpha1
|
||||
pkg/controller/namespace/deletion
|
||||
pkg/controller/nodeipam/config/v1alpha1
|
||||
pkg/controller/nodelifecycle/config/v1alpha1
|
||||
pkg/controller/podautoscaler
|
||||
pkg/controller/podautoscaler/config/v1alpha1
|
||||
pkg/controller/podautoscaler/metrics
|
||||
pkg/controller/podgc
|
||||
pkg/controller/podgc/config/v1alpha1
|
||||
pkg/controller/replicaset
|
||||
pkg/controller/replicaset/config/v1alpha1
|
||||
pkg/controller/replication
|
||||
pkg/controller/replication/config/v1alpha1
|
||||
pkg/controller/resourcequota
|
||||
pkg/controller/resourcequota/config/v1alpha1
|
||||
pkg/controller/route
|
||||
pkg/controller/service
|
||||
pkg/controller/service/config/v1alpha1
|
||||
pkg/controller/serviceaccount
|
||||
pkg/controller/serviceaccount/config/v1alpha1
|
||||
pkg/controller/statefulset
|
||||
pkg/controller/ttl
|
||||
pkg/controller/ttlafterfinished/config/v1alpha1
|
||||
pkg/controller/volume/attachdetach
|
||||
pkg/controller/volume/attachdetach/config/v1alpha1
|
||||
pkg/controller/volume/attachdetach/statusupdater
|
||||
pkg/controller/volume/attachdetach/testing
|
||||
pkg/controller/volume/events
|
||||
pkg/controller/volume/expand
|
||||
pkg/controller/volume/persistentvolume
|
||||
pkg/controller/volume/persistentvolume/config/v1alpha1
|
||||
pkg/controller/volume/persistentvolume/options
|
||||
pkg/credentialprovider
|
||||
pkg/credentialprovider/gcp
|
||||
|
@ -11,6 +11,25 @@ go_library(
|
||||
importpath = "k8s.io/kubernetes/pkg/controller/apis/config",
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//pkg/controller/certificates/signer/config:go_default_library",
|
||||
"//pkg/controller/daemon/config:go_default_library",
|
||||
"//pkg/controller/deployment/config:go_default_library",
|
||||
"//pkg/controller/endpoint/config:go_default_library",
|
||||
"//pkg/controller/garbagecollector/config:go_default_library",
|
||||
"//pkg/controller/job/config:go_default_library",
|
||||
"//pkg/controller/namespace/config:go_default_library",
|
||||
"//pkg/controller/nodeipam/config:go_default_library",
|
||||
"//pkg/controller/nodelifecycle/config:go_default_library",
|
||||
"//pkg/controller/podautoscaler/config:go_default_library",
|
||||
"//pkg/controller/podgc/config:go_default_library",
|
||||
"//pkg/controller/replicaset/config:go_default_library",
|
||||
"//pkg/controller/replication/config:go_default_library",
|
||||
"//pkg/controller/resourcequota/config:go_default_library",
|
||||
"//pkg/controller/service/config:go_default_library",
|
||||
"//pkg/controller/serviceaccount/config:go_default_library",
|
||||
"//pkg/controller/ttlafterfinished/config:go_default_library",
|
||||
"//pkg/controller/volume/attachdetach/config:go_default_library",
|
||||
"//pkg/controller/volume/persistentvolume/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",
|
||||
|
@ -19,16 +19,27 @@ package config
|
||||
import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
componentbaseconfig "k8s.io/component-base/config"
|
||||
csrsigningconfig "k8s.io/kubernetes/pkg/controller/certificates/signer/config"
|
||||
daemonconfig "k8s.io/kubernetes/pkg/controller/daemon/config"
|
||||
deploymentconfig "k8s.io/kubernetes/pkg/controller/deployment/config"
|
||||
endpointconfig "k8s.io/kubernetes/pkg/controller/endpoint/config"
|
||||
garbagecollectorconfig "k8s.io/kubernetes/pkg/controller/garbagecollector/config"
|
||||
jobconfig "k8s.io/kubernetes/pkg/controller/job/config"
|
||||
namespaceconfig "k8s.io/kubernetes/pkg/controller/namespace/config"
|
||||
nodeipamconfig "k8s.io/kubernetes/pkg/controller/nodeipam/config"
|
||||
nodelifecycleconfig "k8s.io/kubernetes/pkg/controller/nodelifecycle/config"
|
||||
poautosclerconfig "k8s.io/kubernetes/pkg/controller/podautoscaler/config"
|
||||
podgcconfig "k8s.io/kubernetes/pkg/controller/podgc/config"
|
||||
replicasetconfig "k8s.io/kubernetes/pkg/controller/replicaset/config"
|
||||
replicationconfig "k8s.io/kubernetes/pkg/controller/replication/config"
|
||||
resourcequotaconfig "k8s.io/kubernetes/pkg/controller/resourcequota/config"
|
||||
serviceconfig "k8s.io/kubernetes/pkg/controller/service/config"
|
||||
serviceaccountconfig "k8s.io/kubernetes/pkg/controller/serviceaccount/config"
|
||||
ttlafterfinishedconfig "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config"
|
||||
attachdetachconfig "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config"
|
||||
persistentvolumeconfig "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config"
|
||||
)
|
||||
|
||||
// GroupResource describes an group resource.
|
||||
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
|
||||
|
||||
// KubeControllerManagerConfiguration contains elements describing kube-controller manager.
|
||||
@ -43,61 +54,61 @@ type KubeControllerManagerConfiguration struct {
|
||||
|
||||
// AttachDetachControllerConfiguration holds configuration for
|
||||
// AttachDetachController related features.
|
||||
AttachDetachController AttachDetachControllerConfiguration
|
||||
AttachDetachController attachdetachconfig.AttachDetachControllerConfiguration
|
||||
// CSRSigningControllerConfiguration holds configuration for
|
||||
// CSRSigningController related features.
|
||||
CSRSigningController CSRSigningControllerConfiguration
|
||||
CSRSigningController csrsigningconfig.CSRSigningControllerConfiguration
|
||||
// DaemonSetControllerConfiguration holds configuration for DaemonSetController
|
||||
// related features.
|
||||
DaemonSetController DaemonSetControllerConfiguration
|
||||
DaemonSetController daemonconfig.DaemonSetControllerConfiguration
|
||||
// DeploymentControllerConfiguration holds configuration for
|
||||
// DeploymentController related features.
|
||||
DeploymentController DeploymentControllerConfiguration
|
||||
DeploymentController deploymentconfig.DeploymentControllerConfiguration
|
||||
// DeprecatedControllerConfiguration holds configuration for some deprecated
|
||||
// features.
|
||||
DeprecatedController DeprecatedControllerConfiguration
|
||||
// EndpointControllerConfiguration holds configuration for EndpointController
|
||||
// related features.
|
||||
EndpointController EndpointControllerConfiguration
|
||||
EndpointController endpointconfig.EndpointControllerConfiguration
|
||||
// GarbageCollectorControllerConfiguration holds configuration for
|
||||
// GarbageCollectorController related features.
|
||||
GarbageCollectorController GarbageCollectorControllerConfiguration
|
||||
GarbageCollectorController garbagecollectorconfig.GarbageCollectorControllerConfiguration
|
||||
// HPAControllerConfiguration holds configuration for HPAController related features.
|
||||
HPAController HPAControllerConfiguration
|
||||
HPAController poautosclerconfig.HPAControllerConfiguration
|
||||
// JobControllerConfiguration holds configuration for JobController related features.
|
||||
JobController JobControllerConfiguration
|
||||
JobController jobconfig.JobControllerConfiguration
|
||||
// NamespaceControllerConfiguration holds configuration for NamespaceController
|
||||
// related features.
|
||||
NamespaceController NamespaceControllerConfiguration
|
||||
NamespaceController namespaceconfig.NamespaceControllerConfiguration
|
||||
// NodeIPAMControllerConfiguration holds configuration for NodeIPAMController
|
||||
// related features.
|
||||
NodeIPAMController NodeIPAMControllerConfiguration
|
||||
NodeIPAMController nodeipamconfig.NodeIPAMControllerConfiguration
|
||||
// NodeLifecycleControllerConfiguration holds configuration for
|
||||
// NodeLifecycleController related features.
|
||||
NodeLifecycleController NodeLifecycleControllerConfiguration
|
||||
NodeLifecycleController nodelifecycleconfig.NodeLifecycleControllerConfiguration
|
||||
// PersistentVolumeBinderControllerConfiguration holds configuration for
|
||||
// PersistentVolumeBinderController related features.
|
||||
PersistentVolumeBinderController PersistentVolumeBinderControllerConfiguration
|
||||
PersistentVolumeBinderController persistentvolumeconfig.PersistentVolumeBinderControllerConfiguration
|
||||
// PodGCControllerConfiguration holds configuration for PodGCController
|
||||
// related features.
|
||||
PodGCController PodGCControllerConfiguration
|
||||
PodGCController podgcconfig.PodGCControllerConfiguration
|
||||
// ReplicaSetControllerConfiguration holds configuration for ReplicaSet related features.
|
||||
ReplicaSetController ReplicaSetControllerConfiguration
|
||||
ReplicaSetController replicasetconfig.ReplicaSetControllerConfiguration
|
||||
// ReplicationControllerConfiguration holds configuration for
|
||||
// ReplicationController related features.
|
||||
ReplicationController ReplicationControllerConfiguration
|
||||
ReplicationController replicationconfig.ReplicationControllerConfiguration
|
||||
// ResourceQuotaControllerConfiguration holds configuration for
|
||||
// ResourceQuotaController related features.
|
||||
ResourceQuotaController ResourceQuotaControllerConfiguration
|
||||
ResourceQuotaController resourcequotaconfig.ResourceQuotaControllerConfiguration
|
||||
// SAControllerConfiguration holds configuration for ServiceAccountController
|
||||
// related features.
|
||||
SAController SAControllerConfiguration
|
||||
SAController serviceaccountconfig.SAControllerConfiguration
|
||||
// ServiceControllerConfiguration holds configuration for ServiceController
|
||||
// related features.
|
||||
ServiceController ServiceControllerConfiguration
|
||||
ServiceController serviceconfig.ServiceControllerConfiguration
|
||||
// TTLAfterFinishedControllerConfiguration holds configuration for
|
||||
// TTLAfterFinishedController related features.
|
||||
TTLAfterFinishedController TTLAfterFinishedControllerConfiguration
|
||||
TTLAfterFinishedController ttlafterfinishedconfig.TTLAfterFinishedControllerConfiguration
|
||||
}
|
||||
|
||||
// GenericControllerManagerConfiguration holds configuration for a generic controller-manager
|
||||
@ -161,17 +172,6 @@ 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.
|
||||
// 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
|
||||
}
|
||||
|
||||
// CloudProviderConfiguration contains basically elements about cloud provider.
|
||||
type CloudProviderConfiguration struct {
|
||||
// Name is the provider for cloud services.
|
||||
@ -180,37 +180,6 @@ 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
|
||||
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
|
||||
}
|
||||
|
||||
// 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,
|
||||
// but more CPU (and network) load.
|
||||
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,
|
||||
// but more CPU (and network) load.
|
||||
ConcurrentDeploymentSyncs int32
|
||||
// deploymentControllerSyncPeriod is the period for syncing the deployments.
|
||||
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
|
||||
@ -223,227 +192,3 @@ type DeprecatedControllerConfiguration struct {
|
||||
// Retry interval equals node-sync-period.
|
||||
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,
|
||||
// but more CPU (and network) load.
|
||||
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
|
||||
// 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
|
||||
}
|
||||
|
||||
// HPAControllerConfiguration contains elements describing HPAController.
|
||||
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
|
||||
}
|
||||
|
||||
// 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,
|
||||
// but more CPU (and network) load.
|
||||
ConcurrentJobSyncs int32
|
||||
}
|
||||
|
||||
// NamespaceControllerConfiguration contains elements describing NamespaceController.
|
||||
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
|
||||
}
|
||||
|
||||
// NodeIPAMControllerConfiguration contains elements describing NodeIPAMController.
|
||||
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
|
||||
}
|
||||
|
||||
// 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.
|
||||
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
|
||||
}
|
||||
|
||||
// PersistentVolumeBinderControllerConfiguration contains elements describing
|
||||
// PersistentVolumeBinderController.
|
||||
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
|
||||
}
|
||||
|
||||
// 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.
|
||||
// If <= 0, the terminated pod garbage collector is disabled.
|
||||
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
|
||||
// CPU (and network) load.
|
||||
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
|
||||
// management, but more CPU (and network) load.
|
||||
ConcurrentRCSyncs int32
|
||||
}
|
||||
|
||||
// ResourceQuotaControllerConfiguration contains elements describing ResourceQuotaController.
|
||||
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
|
||||
}
|
||||
|
||||
// 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.
|
||||
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
|
||||
}
|
||||
|
||||
// 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
|
||||
// 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
|
||||
}
|
||||
|
||||
// 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.
|
||||
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
|
||||
}
|
||||
|
||||
// TTLAfterFinishedControllerConfiguration contains elements describing TTLAfterFinishedController.
|
||||
type TTLAfterFinishedControllerConfiguration struct {
|
||||
// concurrentTTLSyncs is the number of TTL-after-finished collector workers that are
|
||||
// allowed to sync concurrently.
|
||||
ConcurrentTTLSyncs int32
|
||||
}
|
||||
|
@ -15,6 +15,25 @@ go_library(
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//pkg/controller/apis/config:go_default_library",
|
||||
"//pkg/controller/certificates/signer/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/daemon/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/deployment/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/endpoint/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/garbagecollector/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/job/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/namespace/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/nodeipam/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/nodelifecycle/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/podautoscaler/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/podgc/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/replicaset/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/replication/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/resourcequota/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/service/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/serviceaccount/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/ttlafterfinished/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/volume/attachdetach/config/v1alpha1:go_default_library",
|
||||
"//pkg/controller/volume/persistentvolume/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",
|
||||
|
@ -48,13 +48,3 @@ func Convert_v1alpha1_KubeCloudSharedConfiguration_To_config_KubeCloudSharedConf
|
||||
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)
|
||||
}
|
||||
|
@ -23,6 +23,25 @@ import (
|
||||
kruntime "k8s.io/apimachinery/pkg/runtime"
|
||||
componentbaseconfigv1alpha1 "k8s.io/component-base/config/v1alpha1"
|
||||
kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||
csrsigningconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/certificates/signer/config/v1alpha1"
|
||||
daemonconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/daemon/config/v1alpha1"
|
||||
deploymentconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/deployment/config/v1alpha1"
|
||||
endpointconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/endpoint/config/v1alpha1"
|
||||
garbagecollectorconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/garbagecollector/config/v1alpha1"
|
||||
jobconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/job/config/v1alpha1"
|
||||
namespaceconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/namespace/config/v1alpha1"
|
||||
nodeipamconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/nodeipam/config/v1alpha1"
|
||||
nodelifecycleconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/nodelifecycle/config/v1alpha1"
|
||||
poautosclerconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/podautoscaler/config/v1alpha1"
|
||||
podgcconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/podgc/config/v1alpha1"
|
||||
replicasetconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/replicaset/config/v1alpha1"
|
||||
replicationconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/replication/config/v1alpha1"
|
||||
resourcequotaconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/resourcequota/config/v1alpha1"
|
||||
serviceconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/service/config/v1alpha1"
|
||||
serviceaccountconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/serviceaccount/config/v1alpha1"
|
||||
ttlafterfinishedconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config/v1alpha1"
|
||||
attachdetachconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config/v1alpha1"
|
||||
persistentvolumeconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config/v1alpha1"
|
||||
utilpointer "k8s.io/utils/pointer"
|
||||
)
|
||||
|
||||
@ -31,25 +50,9 @@ func addDefaultingFuncs(scheme *kruntime.Scheme) error {
|
||||
}
|
||||
|
||||
func SetDefaults_KubeControllerManagerConfiguration(obj *kubectrlmgrconfigv1alpha1.KubeControllerManagerConfiguration) {
|
||||
zero := metav1.Duration{}
|
||||
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.NodeIPAMController.NodeCIDRMaskSize == 0 {
|
||||
obj.NodeIPAMController.NodeCIDRMaskSize = 24
|
||||
}
|
||||
if obj.PersistentVolumeBinderController.PVClaimBinderSyncPeriod == zero {
|
||||
obj.PersistentVolumeBinderController.PVClaimBinderSyncPeriod = metav1.Duration{Duration: 15 * time.Second}
|
||||
}
|
||||
if obj.SAController.ConcurrentSATokenSyncs == 0 {
|
||||
obj.SAController.ConcurrentSATokenSyncs = 5
|
||||
}
|
||||
if obj.TTLAfterFinishedController.ConcurrentTTLSyncs <= 0 {
|
||||
obj.TTLAfterFinishedController.ConcurrentTTLSyncs = 5
|
||||
}
|
||||
|
||||
// These defaults override the recommended defaults from the componentbaseconfigv1alpha1 package that are applied automatically
|
||||
// These client-connection defaults are specific to the kube-controller-manager
|
||||
@ -62,6 +65,44 @@ func SetDefaults_KubeControllerManagerConfiguration(obj *kubectrlmgrconfigv1alph
|
||||
|
||||
// Use the default RecommendedDefaultGenericControllerManagerConfiguration options
|
||||
RecommendedDefaultGenericControllerManagerConfiguration(&obj.Generic)
|
||||
// Use the default RecommendedDefaultHPAControllerConfiguration options
|
||||
attachdetachconfigv1alpha1.RecommendedDefaultAttachDetachControllerConfiguration(&obj.AttachDetachController)
|
||||
// Use the default RecommendedDefaultCSRSigningControllerConfiguration options
|
||||
csrsigningconfigv1alpha1.RecommendedDefaultCSRSigningControllerConfiguration(&obj.CSRSigningController)
|
||||
// Use the default RecommendedDefaultDaemonSetControllerConfiguration options
|
||||
daemonconfigv1alpha1.RecommendedDefaultDaemonSetControllerConfiguration(&obj.DaemonSetController)
|
||||
// Use the default RecommendedDefaultDeploymentControllerConfiguration options
|
||||
deploymentconfigv1alpha1.RecommendedDefaultDeploymentControllerConfiguration(&obj.DeploymentController)
|
||||
// Use the default RecommendedDefaultEndpointControllerConfiguration options
|
||||
endpointconfigv1alpha1.RecommendedDefaultEndpointControllerConfiguration(&obj.EndpointController)
|
||||
// Use the default RecommendedDefaultGenericControllerManagerConfiguration options
|
||||
garbagecollectorconfigv1alpha1.RecommendedDefaultGarbageCollectorControllerConfiguration(&obj.GarbageCollectorController)
|
||||
// Use the default RecommendedDefaultJobControllerConfiguration options
|
||||
jobconfigv1alpha1.RecommendedDefaultJobControllerConfiguration(&obj.JobController)
|
||||
// Use the default RecommendedDefaultNamespaceControllerConfiguration options
|
||||
namespaceconfigv1alpha1.RecommendedDefaultNamespaceControllerConfiguration(&obj.NamespaceController)
|
||||
// Use the default RecommendedDefaultNodeIPAMControllerConfiguration options
|
||||
nodeipamconfigv1alpha1.RecommendedDefaultNodeIPAMControllerConfiguration(&obj.NodeIPAMController)
|
||||
// Use the default RecommendedDefaultHPAControllerConfiguration options
|
||||
poautosclerconfigv1alpha1.RecommendedDefaultHPAControllerConfiguration(&obj.HPAController)
|
||||
// Use the default RecommendedDefaultNodeLifecycleControllerConfiguration options
|
||||
nodelifecycleconfigv1alpha1.RecommendedDefaultNodeLifecycleControllerConfiguration(&obj.NodeLifecycleController)
|
||||
// Use the default RecommendedDefaultPodGCControllerConfiguration options
|
||||
podgcconfigv1alpha1.RecommendedDefaultPodGCControllerConfiguration(&obj.PodGCController)
|
||||
// Use the default RecommendedDefaultReplicaSetControllerConfiguration options
|
||||
replicasetconfigv1alpha1.RecommendedDefaultReplicaSetControllerConfiguration(&obj.ReplicaSetController)
|
||||
// Use the default RecommendedDefaultReplicationControllerConfiguration options
|
||||
replicationconfigv1alpha1.RecommendedDefaultReplicationControllerConfiguration(&obj.ReplicationController)
|
||||
// Use the default RecommendedDefaultResourceQuotaControllerConfiguration options
|
||||
resourcequotaconfigv1alpha1.RecommendedDefaultResourceQuotaControllerConfiguration(&obj.ResourceQuotaController)
|
||||
// Use the default RecommendedDefaultGenericControllerManagerConfiguration options
|
||||
serviceconfigv1alpha1.RecommendedDefaultServiceControllerConfiguration(&obj.ServiceController)
|
||||
// Use the default RecommendedDefaultSAControllerConfiguration options
|
||||
serviceaccountconfigv1alpha1.RecommendedDefaultSAControllerConfiguration(&obj.SAController)
|
||||
// Use the default RecommendedDefaultTTLAfterFinishedControllerConfiguration options
|
||||
ttlafterfinishedconfigv1alpha1.RecommendedDefaultTTLAfterFinishedControllerConfiguration(&obj.TTLAfterFinishedController)
|
||||
// Use the default RecommendedDefaultPersistentVolumeBinderControllerConfiguration options
|
||||
persistentvolumeconfigv1alpha1.RecommendedDefaultPersistentVolumeBinderControllerConfiguration(&obj.PersistentVolumeBinderController)
|
||||
}
|
||||
|
||||
func RecommendedDefaultGenericControllerManagerConfiguration(obj *kubectrlmgrconfigv1alpha1.GenericControllerManagerConfiguration) {
|
||||
@ -99,171 +140,3 @@ func SetDefaults_KubeCloudSharedConfiguration(obj *kubectrlmgrconfigv1alpha1.Kub
|
||||
obj.RouteReconciliationPeriod = metav1.Duration{Duration: 10 * time.Second}
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
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 *kubectrlmgrconfigv1alpha1.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/"
|
||||
}
|
||||
}
|
||||
|
@ -16,6 +16,26 @@ limitations under the License.
|
||||
|
||||
// +k8s:deepcopy-gen=package
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/apis/config
|
||||
// +k8s:conversion-gen=k8s.io/component-base/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/certificates/signer/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/daemon/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/deployment/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/endpoint/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/garbagecollector/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/job/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/namespace/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/nodeipam/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/nodelifecycle/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/podautoscaler/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/podgc/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/replicaset/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/replication/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/resourcequota/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/service/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/serviceaccount/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/ttlafterfinished/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/volume/attachdetach/config/v1alpha1
|
||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config/v1alpha1
|
||||
// +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
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -38,20 +38,4 @@ func RegisterDefaults(scheme *runtime.Scheme) error {
|
||||
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)
|
||||
}
|
||||
|
374
pkg/controller/apis/config/zz_generated.deepcopy.go
generated
374
pkg/controller/apis/config/zz_generated.deepcopy.go
generated
@ -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 *CloudProviderConfiguration) DeepCopyInto(out *CloudProviderConfiguration) {
|
||||
*out = *in
|
||||
@ -74,39 +40,6 @@ func (in *CloudProviderConfiguration) DeepCopy() *CloudProviderConfiguration {
|
||||
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
|
||||
@ -123,43 +56,6 @@ func (in *DeprecatedControllerConfiguration) DeepCopy() *DeprecatedControllerCon
|
||||
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
|
||||
@ -186,60 +82,6 @@ func (in *GenericControllerManagerConfiguration) DeepCopy() *GenericControllerMa
|
||||
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
|
||||
@ -306,219 +148,3 @@ func (in *KubeControllerManagerConfiguration) DeepCopyObject() runtime.Object {
|
||||
}
|
||||
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 *TTLAfterFinishedControllerConfiguration) DeepCopyInto(out *TTLAfterFinishedControllerConfiguration) {
|
||||
*out = *in
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TTLAfterFinishedControllerConfiguration.
|
||||
func (in *TTLAfterFinishedControllerConfiguration) DeepCopy() *TTLAfterFinishedControllerConfiguration {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(TTLAfterFinishedControllerConfiguration)
|
||||
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
|
||||
}
|
||||
|
@ -46,6 +46,9 @@ filegroup(
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [":package-srcs"],
|
||||
srcs = [
|
||||
":package-srcs",
|
||||
"//pkg/controller/certificates/signer/config:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
)
|
||||
|
30
pkg/controller/certificates/signer/config/BUILD
Normal file
30
pkg/controller/certificates/signer/config/BUILD
Normal file
@ -0,0 +1,30 @@
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = [
|
||||
"doc.go",
|
||||
"types.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
importpath = "k8s.io/kubernetes/pkg/controller/certificates/signer/config",
|
||||
visibility = ["//visibility:public"],
|
||||
deps = ["//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "package-srcs",
|
||||
srcs = glob(["**"]),
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:private"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [
|
||||
":package-srcs",
|
||||
"//pkg/controller/certificates/signer/config/v1alpha1:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
19
pkg/controller/certificates/signer/config/doc.go
Normal file
19
pkg/controller/certificates/signer/config/doc.go
Normal file
@ -0,0 +1,19 @@
|
||||
/*
|
||||
Copyright 2019 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/certificates/signer/config"
|
34
pkg/controller/certificates/signer/config/types.go
Normal file
34
pkg/controller/certificates/signer/config/types.go
Normal file
@ -0,0 +1,34 @@
|
||||
/*
|
||||
Copyright 2019 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 (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
)
|
||||
|
||||
// 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
|
||||
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
|
||||
}
|
36
pkg/controller/certificates/signer/config/v1alpha1/BUILD
Normal file
36
pkg/controller/certificates/signer/config/v1alpha1/BUILD
Normal file
@ -0,0 +1,36 @@
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = [
|
||||
"conversion.go",
|
||||
"defaults.go",
|
||||
"doc.go",
|
||||
"register.go",
|
||||
"zz_generated.conversion.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
importpath = "k8s.io/kubernetes/pkg/controller/certificates/signer/config/v1alpha1",
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//pkg/controller/certificates/signer/config: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/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"],
|
||||
)
|
@ -0,0 +1,40 @@
|
||||
/*
|
||||
Copyright 2019 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"
|
||||
csrsigningconfig "k8s.io/kubernetes/pkg/controller/certificates/signer/config"
|
||||
)
|
||||
|
||||
// Important! The public back-and-forth conversion functions for the types in this package
|
||||
// with CSRSigningControllerConfiguration 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_CSRSigningControllerConfiguration_To_config_CSRSigningControllerConfiguration is an autogenerated conversion function.
|
||||
func Convert_v1alpha1_CSRSigningControllerConfiguration_To_config_CSRSigningControllerConfiguration(in *v1alpha1.CSRSigningControllerConfiguration, out *csrsigningconfig.CSRSigningControllerConfiguration, s conversion.Scope) error {
|
||||
return autoConvert_v1alpha1_CSRSigningControllerConfiguration_To_config_CSRSigningControllerConfiguration(in, out, s)
|
||||
}
|
||||
|
||||
// Convert_config_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration is an autogenerated conversion function.
|
||||
func Convert_config_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(in *csrsigningconfig.CSRSigningControllerConfiguration, out *v1alpha1.CSRSigningControllerConfiguration, s conversion.Scope) error {
|
||||
return autoConvert_config_CSRSigningControllerConfiguration_To_v1alpha1_CSRSigningControllerConfiguration(in, out, s)
|
||||
}
|
@ -0,0 +1,46 @@
|
||||
/*
|
||||
Copyright 2019 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"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||
)
|
||||
|
||||
// RecommendedDefaultCSRSigningControllerConfiguration defaults a pointer to a
|
||||
// CSRSigningControllerConfiguration struct. This will set the recommended default
|
||||
// values, but they may be subject to change between API versions. This function
|
||||
// is intentionally not registered in the scheme as a "normal" `SetDefaults_Foo`
|
||||
// function to allow consumers of this type to set whatever defaults for their
|
||||
// embedded configs. Forcing consumers to use these defaults would be problematic
|
||||
// as defaulting in the scheme is done as part of the conversion, and there would
|
||||
// be no easy way to opt-out. Instead, if you want to use this defaulting method
|
||||
// run it in your wrapper struct of this type in its `SetDefaults_` method.
|
||||
func RecommendedDefaultCSRSigningControllerConfiguration(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}
|
||||
}
|
||||
}
|
21
pkg/controller/certificates/signer/config/v1alpha1/doc.go
Normal file
21
pkg/controller/certificates/signer/config/v1alpha1/doc.go
Normal file
@ -0,0 +1,21 @@
|
||||
/*
|
||||
Copyright 2019 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:conversion-gen=k8s.io/kubernetes/pkg/controller/certificates/signer/config
|
||||
// +k8s:conversion-gen-external-types=k8s.io/kube-controller-manager/config/v1alpha1
|
||||
|
||||
package v1alpha1 // import "k8s.io/kubernetes/pkg/controller/certificates/signer/config/v1alpha1"
|
@ -0,0 +1,31 @@
|
||||
/*
|
||||
Copyright 2019 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"
|
||||
)
|
||||
|
||||
var (
|
||||
// SchemeBuilder is the scheme builder with scheme init functions to run for this API package
|
||||
SchemeBuilder runtime.SchemeBuilder
|
||||
// localSchemeBuilder extends the SchemeBuilder instance with the external types. In this package,
|
||||
// defaulting and conversion init funcs are registered as well.
|
||||
localSchemeBuilder = &SchemeBuilder
|
||||
// AddToScheme is a global function that registers this API group & version to a scheme
|
||||
AddToScheme = localSchemeBuilder.AddToScheme
|
||||
)
|
105
pkg/controller/certificates/signer/config/v1alpha1/zz_generated.conversion.go
generated
Normal file
105
pkg/controller/certificates/signer/config/v1alpha1/zz_generated.conversion.go
generated
Normal file
@ -0,0 +1,105 @@
|
||||
// +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 (
|
||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
conversion "k8s.io/apimachinery/pkg/conversion"
|
||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||
v1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||
config "k8s.io/kubernetes/pkg/controller/certificates/signer/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.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.GroupResource)(nil), (*v1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||
return Convert_v1alpha1_GroupResource_To_v1_GroupResource(a.(*v1alpha1.GroupResource), b.(*v1.GroupResource), scope)
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := s.AddGeneratedConversionFunc((*v1.GroupResource)(nil), (*v1alpha1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||
return Convert_v1_GroupResource_To_v1alpha1_GroupResource(a.(*v1.GroupResource), b.(*v1alpha1.GroupResource), scope)
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := s.AddConversionFunc((*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.AddConversionFunc((*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
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
func autoConvert_v1alpha1_GroupResource_To_v1_GroupResource(in *v1alpha1.GroupResource, out *v1.GroupResource, s conversion.Scope) error {
|
||||
out.Group = in.Group
|
||||
out.Resource = in.Resource
|
||||
return nil
|
||||
}
|
||||
|
||||
// Convert_v1alpha1_GroupResource_To_v1_GroupResource is an autogenerated conversion function.
|
||||
func Convert_v1alpha1_GroupResource_To_v1_GroupResource(in *v1alpha1.GroupResource, out *v1.GroupResource, s conversion.Scope) error {
|
||||
return autoConvert_v1alpha1_GroupResource_To_v1_GroupResource(in, out, s)
|
||||
}
|
||||
|
||||
func autoConvert_v1_GroupResource_To_v1alpha1_GroupResource(in *v1.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error {
|
||||
out.Group = in.Group
|
||||
out.Resource = in.Resource
|
||||
return nil
|
||||
}
|
||||
|
||||
// Convert_v1_GroupResource_To_v1alpha1_GroupResource is an autogenerated conversion function.
|
||||
func Convert_v1_GroupResource_To_v1alpha1_GroupResource(in *v1.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error {
|
||||
return autoConvert_v1_GroupResource_To_v1alpha1_GroupResource(in, out, s)
|
||||
}
|
21
pkg/controller/certificates/signer/config/v1alpha1/zz_generated.deepcopy.go
generated
Normal file
21
pkg/controller/certificates/signer/config/v1alpha1/zz_generated.deepcopy.go
generated
Normal file
@ -0,0 +1,21 @@
|
||||
// +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
|
38
pkg/controller/certificates/signer/config/zz_generated.deepcopy.go
generated
Normal file
38
pkg/controller/certificates/signer/config/zz_generated.deepcopy.go
generated
Normal file
@ -0,0 +1,38 @@
|
||||
// +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
|
||||
|
||||
// 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
|
||||
}
|
@ -104,6 +104,7 @@ filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [
|
||||
":package-srcs",
|
||||
"//pkg/controller/daemon/config:all-srcs",
|
||||
"//pkg/controller/daemon/util:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
|
29
pkg/controller/daemon/config/BUILD
Normal file
29
pkg/controller/daemon/config/BUILD
Normal file
@ -0,0 +1,29 @@
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = [
|
||||
"doc.go",
|
||||
"types.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
importpath = "k8s.io/kubernetes/pkg/controller/daemon/config",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "package-srcs",
|
||||
srcs = glob(["**"]),
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:private"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [
|
||||
":package-srcs",
|
||||
"//pkg/controller/daemon/config/v1alpha1:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
14
pkg/controller/daemon/config/OWNERS
Normal file
14
pkg/controller/daemon/config/OWNERS
Normal file
@ -0,0 +1,14 @@
|
||||
approvers:
|
||||
- api-approvers
|
||||
- deads2k
|
||||
- luxas
|
||||
- mtaufen
|
||||
- sttts
|
||||
- stewart-yu
|
||||
reviewers:
|
||||
- api-reviewers
|
||||
- deads2k
|
||||
- luxas
|
||||
- mtaufen
|
||||
- sttts
|
||||
- stewart-yu
|
19
pkg/controller/daemon/config/doc.go
Normal file
19
pkg/controller/daemon/config/doc.go
Normal file
@ -0,0 +1,19 @@
|
||||
/*
|
||||
Copyright 2019 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/daemon/config"
|
25
pkg/controller/daemon/config/types.go
Normal file
25
pkg/controller/daemon/config/types.go
Normal file
@ -0,0 +1,25 @@
|
||||
/*
|
||||
Copyright 2019 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
|
||||
|
||||
// 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,
|
||||
// but more CPU (and network) load.
|
||||
ConcurrentDaemonSetSyncs int32
|
||||
}
|
36
pkg/controller/daemon/config/v1alpha1/BUILD
Normal file
36
pkg/controller/daemon/config/v1alpha1/BUILD
Normal file
@ -0,0 +1,36 @@
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = [
|
||||
"conversion.go",
|
||||
"defaults.go",
|
||||
"doc.go",
|
||||
"register.go",
|
||||
"zz_generated.conversion.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
importpath = "k8s.io/kubernetes/pkg/controller/daemon/config/v1alpha1",
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//pkg/controller/daemon/config: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/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"],
|
||||
)
|
40
pkg/controller/daemon/config/v1alpha1/conversion.go
Normal file
40
pkg/controller/daemon/config/v1alpha1/conversion.go
Normal file
@ -0,0 +1,40 @@
|
||||
/*
|
||||
Copyright 2019 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"
|
||||
daemonconfig "k8s.io/kubernetes/pkg/controller/daemon/config"
|
||||
)
|
||||
|
||||
// Important! The public back-and-forth conversion functions for the types in this epackage
|
||||
// with DaemonSetControllerConfiguration 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_DaemonSetControllerConfiguration_To_config_DaemonSetControllerConfiguration is an autogenerated conversion function.
|
||||
func Convert_v1alpha1_DaemonSetControllerConfiguration_To_config_DaemonSetControllerConfiguration(in *v1alpha1.DaemonSetControllerConfiguration, out *daemonconfig.DaemonSetControllerConfiguration, s conversion.Scope) error {
|
||||
return autoConvert_v1alpha1_DaemonSetControllerConfiguration_To_config_DaemonSetControllerConfiguration(in, out, s)
|
||||
}
|
||||
|
||||
// Convert_config_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration is an autogenerated conversion function.
|
||||
func Convert_config_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(in *daemonconfig.DaemonSetControllerConfiguration, out *v1alpha1.DaemonSetControllerConfiguration, s conversion.Scope) error {
|
||||
return autoConvert_config_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(in, out, s)
|
||||
}
|
36
pkg/controller/daemon/config/v1alpha1/defaults.go
Normal file
36
pkg/controller/daemon/config/v1alpha1/defaults.go
Normal file
@ -0,0 +1,36 @@
|
||||
/*
|
||||
Copyright 2019 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 (
|
||||
kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||
)
|
||||
|
||||
// RecommendedDefaultDaemonSetControllerConfiguration defaults a pointer to a
|
||||
// DaemonSetControllerConfiguration struct. This will set the recommended default
|
||||
// values, but they may be subject to change between API versions. This function
|
||||
// is intentionally not registered in the scheme as a "normal" `SetDefaults_Foo`
|
||||
// function to allow consumers of this type to set whatever defaults for their
|
||||
// embedded configs. Forcing consumers to use these defaults would be problematic
|
||||
// as defaulting in the scheme is done as part of the conversion, and there would
|
||||
// be no easy way to opt-out. Instead, if you want to use this defaulting method
|
||||
// run it in your wrapper struct of this type in its `SetDefaults_` method.
|
||||
func RecommendedDefaultDaemonSetControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.DaemonSetControllerConfiguration) {
|
||||
if obj.ConcurrentDaemonSetSyncs == 0 {
|
||||
obj.ConcurrentDaemonSetSyncs = 2
|
||||
}
|
||||
}
|
21
pkg/controller/daemon/config/v1alpha1/doc.go
Normal file
21
pkg/controller/daemon/config/v1alpha1/doc.go
Normal file
@ -0,0 +1,21 @@
|
||||
/*
|
||||
Copyright 2019 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:conversion-gen=k8s.io/kubernetes/pkg/controller/daemon/config
|
||||
// +k8s:conversion-gen-external-types=k8s.io/kube-controller-manager/config/v1alpha1
|
||||
|
||||
package v1alpha1 // import "k8s.io/kubernetes/pkg/controller/daemon/config/v1alpha1"
|
31
pkg/controller/daemon/config/v1alpha1/register.go
Normal file
31
pkg/controller/daemon/config/v1alpha1/register.go
Normal file
@ -0,0 +1,31 @@
|
||||
/*
|
||||
Copyright 2019 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"
|
||||
)
|
||||
|
||||
var (
|
||||
// SchemeBuilder is the scheme builder with scheme init functions to run for this API package
|
||||
SchemeBuilder runtime.SchemeBuilder
|
||||
// localSchemeBuilder extends the SchemeBuilder instance with the external types. In this package,
|
||||
// defaulting and conversion init funcs are registered as well.
|
||||
localSchemeBuilder = &SchemeBuilder
|
||||
// AddToScheme is a global function that registers this API group & version to a scheme
|
||||
AddToScheme = localSchemeBuilder.AddToScheme
|
||||
)
|
101
pkg/controller/daemon/config/v1alpha1/zz_generated.conversion.go
generated
Normal file
101
pkg/controller/daemon/config/v1alpha1/zz_generated.conversion.go
generated
Normal file
@ -0,0 +1,101 @@
|
||||
// +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 (
|
||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
conversion "k8s.io/apimachinery/pkg/conversion"
|
||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||
v1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||
config "k8s.io/kubernetes/pkg/controller/daemon/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.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.GroupResource)(nil), (*v1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||
return Convert_v1alpha1_GroupResource_To_v1_GroupResource(a.(*v1alpha1.GroupResource), b.(*v1.GroupResource), scope)
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := s.AddGeneratedConversionFunc((*v1.GroupResource)(nil), (*v1alpha1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||
return Convert_v1_GroupResource_To_v1alpha1_GroupResource(a.(*v1.GroupResource), b.(*v1alpha1.GroupResource), scope)
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := s.AddConversionFunc((*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.AddConversionFunc((*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
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func autoConvert_v1alpha1_DaemonSetControllerConfiguration_To_config_DaemonSetControllerConfiguration(in *v1alpha1.DaemonSetControllerConfiguration, out *config.DaemonSetControllerConfiguration, s conversion.Scope) error {
|
||||
out.ConcurrentDaemonSetSyncs = in.ConcurrentDaemonSetSyncs
|
||||
return nil
|
||||
}
|
||||
|
||||
func autoConvert_config_DaemonSetControllerConfiguration_To_v1alpha1_DaemonSetControllerConfiguration(in *config.DaemonSetControllerConfiguration, out *v1alpha1.DaemonSetControllerConfiguration, s conversion.Scope) error {
|
||||
out.ConcurrentDaemonSetSyncs = in.ConcurrentDaemonSetSyncs
|
||||
return nil
|
||||
}
|
||||
|
||||
func autoConvert_v1alpha1_GroupResource_To_v1_GroupResource(in *v1alpha1.GroupResource, out *v1.GroupResource, s conversion.Scope) error {
|
||||
out.Group = in.Group
|
||||
out.Resource = in.Resource
|
||||
return nil
|
||||
}
|
||||
|
||||
// Convert_v1alpha1_GroupResource_To_v1_GroupResource is an autogenerated conversion function.
|
||||
func Convert_v1alpha1_GroupResource_To_v1_GroupResource(in *v1alpha1.GroupResource, out *v1.GroupResource, s conversion.Scope) error {
|
||||
return autoConvert_v1alpha1_GroupResource_To_v1_GroupResource(in, out, s)
|
||||
}
|
||||
|
||||
func autoConvert_v1_GroupResource_To_v1alpha1_GroupResource(in *v1.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error {
|
||||
out.Group = in.Group
|
||||
out.Resource = in.Resource
|
||||
return nil
|
||||
}
|
||||
|
||||
// Convert_v1_GroupResource_To_v1alpha1_GroupResource is an autogenerated conversion function.
|
||||
func Convert_v1_GroupResource_To_v1alpha1_GroupResource(in *v1.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error {
|
||||
return autoConvert_v1_GroupResource_To_v1alpha1_GroupResource(in, out, s)
|
||||
}
|
21
pkg/controller/daemon/config/v1alpha1/zz_generated.deepcopy.go
generated
Normal file
21
pkg/controller/daemon/config/v1alpha1/zz_generated.deepcopy.go
generated
Normal file
@ -0,0 +1,21 @@
|
||||
// +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
|
37
pkg/controller/daemon/config/zz_generated.deepcopy.go
generated
Normal file
37
pkg/controller/daemon/config/zz_generated.deepcopy.go
generated
Normal file
@ -0,0 +1,37 @@
|
||||
// +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
|
||||
|
||||
// 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
|
||||
}
|
@ -99,6 +99,7 @@ filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [
|
||||
":package-srcs",
|
||||
"//pkg/controller/deployment/config:all-srcs",
|
||||
"//pkg/controller/deployment/util:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
|
30
pkg/controller/deployment/config/BUILD
Normal file
30
pkg/controller/deployment/config/BUILD
Normal file
@ -0,0 +1,30 @@
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = [
|
||||
"doc.go",
|
||||
"types.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
importpath = "k8s.io/kubernetes/pkg/controller/deployment/config",
|
||||
visibility = ["//visibility:public"],
|
||||
deps = ["//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "package-srcs",
|
||||
srcs = glob(["**"]),
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:private"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [
|
||||
":package-srcs",
|
||||
"//pkg/controller/deployment/config/v1alpha1:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
14
pkg/controller/deployment/config/OWNERS
Normal file
14
pkg/controller/deployment/config/OWNERS
Normal file
@ -0,0 +1,14 @@
|
||||
approvers:
|
||||
- api-approvers
|
||||
- deads2k
|
||||
- luxas
|
||||
- mtaufen
|
||||
- sttts
|
||||
- stewart-yu
|
||||
reviewers:
|
||||
- api-reviewers
|
||||
- deads2k
|
||||
- luxas
|
||||
- mtaufen
|
||||
- sttts
|
||||
- stewart-yu
|
19
pkg/controller/deployment/config/doc.go
Normal file
19
pkg/controller/deployment/config/doc.go
Normal file
@ -0,0 +1,19 @@
|
||||
/*
|
||||
Copyright 2019 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/deployment/config"
|
31
pkg/controller/deployment/config/types.go
Normal file
31
pkg/controller/deployment/config/types.go
Normal file
@ -0,0 +1,31 @@
|
||||
/*
|
||||
Copyright 2019 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 (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
)
|
||||
|
||||
// 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,
|
||||
// but more CPU (and network) load.
|
||||
ConcurrentDeploymentSyncs int32
|
||||
// deploymentControllerSyncPeriod is the period for syncing the deployments.
|
||||
DeploymentControllerSyncPeriod metav1.Duration
|
||||
}
|
36
pkg/controller/deployment/config/v1alpha1/BUILD
Normal file
36
pkg/controller/deployment/config/v1alpha1/BUILD
Normal file
@ -0,0 +1,36 @@
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = [
|
||||
"conversion.go",
|
||||
"defaults.go",
|
||||
"doc.go",
|
||||
"register.go",
|
||||
"zz_generated.conversion.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
importpath = "k8s.io/kubernetes/pkg/controller/deployment/config/v1alpha1",
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//pkg/controller/deployment/config: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/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"],
|
||||
)
|
40
pkg/controller/deployment/config/v1alpha1/conversion.go
Normal file
40
pkg/controller/deployment/config/v1alpha1/conversion.go
Normal file
@ -0,0 +1,40 @@
|
||||
/*
|
||||
Copyright 2019 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"
|
||||
deploymentconfig "k8s.io/kubernetes/pkg/controller/deployment/config"
|
||||
)
|
||||
|
||||
// Important! The public back-and-forth conversion functions for the types in this package
|
||||
// with DeploymentControllerConfiguration 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_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration is an autogenerated conversion function.
|
||||
func Convert_v1alpha1_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration(in *v1alpha1.DeploymentControllerConfiguration, out *deploymentconfig.DeploymentControllerConfiguration, s conversion.Scope) error {
|
||||
return autoConvert_v1alpha1_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration(in, out, s)
|
||||
}
|
||||
|
||||
// Convert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration is an autogenerated conversion function.
|
||||
func Convert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(in *deploymentconfig.DeploymentControllerConfiguration, out *v1alpha1.DeploymentControllerConfiguration, s conversion.Scope) error {
|
||||
return autoConvert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(in, out, s)
|
||||
}
|
43
pkg/controller/deployment/config/v1alpha1/defaults.go
Normal file
43
pkg/controller/deployment/config/v1alpha1/defaults.go
Normal file
@ -0,0 +1,43 @@
|
||||
/*
|
||||
Copyright 2019 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"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||
)
|
||||
|
||||
// RecommendedDefaultDeploymentControllerConfiguration defaults a pointer to a
|
||||
// DeploymentControllerConfiguration struct. This will set the recommended default
|
||||
// values, but they may be subject to change between API versions. This function
|
||||
// is intentionally not registered in the scheme as a "normal" `SetDefaults_Foo`
|
||||
// function to allow consumers of this type to set whatever defaults for their
|
||||
// embedded configs. Forcing consumers to use these defaults would be problematic
|
||||
// as defaulting in the scheme is done as part of the conversion, and there would
|
||||
// be no easy way to opt-out. Instead, if you want to use this defaulting method
|
||||
// run it in your wrapper struct of this type in its `SetDefaults_` method.
|
||||
func RecommendedDefaultDeploymentControllerConfiguration(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}
|
||||
}
|
||||
}
|
21
pkg/controller/deployment/config/v1alpha1/doc.go
Normal file
21
pkg/controller/deployment/config/v1alpha1/doc.go
Normal file
@ -0,0 +1,21 @@
|
||||
/*
|
||||
Copyright 2019 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:conversion-gen=k8s.io/kubernetes/pkg/controller/deployment/config
|
||||
// +k8s:conversion-gen-external-types=k8s.io/kube-controller-manager/config/v1alpha1
|
||||
|
||||
package v1alpha1 // import "k8s.io/kubernetes/pkg/controller/deployment/config/v1alpha1"
|
31
pkg/controller/deployment/config/v1alpha1/register.go
Normal file
31
pkg/controller/deployment/config/v1alpha1/register.go
Normal file
@ -0,0 +1,31 @@
|
||||
/*
|
||||
Copyright 2019 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"
|
||||
)
|
||||
|
||||
var (
|
||||
// SchemeBuilder is the scheme builder with scheme init functions to run for this API package
|
||||
SchemeBuilder runtime.SchemeBuilder
|
||||
// localSchemeBuilder extends the SchemeBuilder instance with the external types. In this package,
|
||||
// defaulting and conversion init funcs are registered as well.
|
||||
localSchemeBuilder = &SchemeBuilder
|
||||
// AddToScheme is a global function that registers this API group & version to a scheme
|
||||
AddToScheme = localSchemeBuilder.AddToScheme
|
||||
)
|
103
pkg/controller/deployment/config/v1alpha1/zz_generated.conversion.go
generated
Normal file
103
pkg/controller/deployment/config/v1alpha1/zz_generated.conversion.go
generated
Normal file
@ -0,0 +1,103 @@
|
||||
// +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 (
|
||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
conversion "k8s.io/apimachinery/pkg/conversion"
|
||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||
v1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||
config "k8s.io/kubernetes/pkg/controller/deployment/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.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.GroupResource)(nil), (*v1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||
return Convert_v1alpha1_GroupResource_To_v1_GroupResource(a.(*v1alpha1.GroupResource), b.(*v1.GroupResource), scope)
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := s.AddGeneratedConversionFunc((*v1.GroupResource)(nil), (*v1alpha1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||
return Convert_v1_GroupResource_To_v1alpha1_GroupResource(a.(*v1.GroupResource), b.(*v1alpha1.GroupResource), scope)
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := s.AddConversionFunc((*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.AddConversionFunc((*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
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
func autoConvert_v1alpha1_GroupResource_To_v1_GroupResource(in *v1alpha1.GroupResource, out *v1.GroupResource, s conversion.Scope) error {
|
||||
out.Group = in.Group
|
||||
out.Resource = in.Resource
|
||||
return nil
|
||||
}
|
||||
|
||||
// Convert_v1alpha1_GroupResource_To_v1_GroupResource is an autogenerated conversion function.
|
||||
func Convert_v1alpha1_GroupResource_To_v1_GroupResource(in *v1alpha1.GroupResource, out *v1.GroupResource, s conversion.Scope) error {
|
||||
return autoConvert_v1alpha1_GroupResource_To_v1_GroupResource(in, out, s)
|
||||
}
|
||||
|
||||
func autoConvert_v1_GroupResource_To_v1alpha1_GroupResource(in *v1.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error {
|
||||
out.Group = in.Group
|
||||
out.Resource = in.Resource
|
||||
return nil
|
||||
}
|
||||
|
||||
// Convert_v1_GroupResource_To_v1alpha1_GroupResource is an autogenerated conversion function.
|
||||
func Convert_v1_GroupResource_To_v1alpha1_GroupResource(in *v1.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error {
|
||||
return autoConvert_v1_GroupResource_To_v1alpha1_GroupResource(in, out, s)
|
||||
}
|
21
pkg/controller/deployment/config/v1alpha1/zz_generated.deepcopy.go
generated
Normal file
21
pkg/controller/deployment/config/v1alpha1/zz_generated.deepcopy.go
generated
Normal file
@ -0,0 +1,21 @@
|
||||
// +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
|
38
pkg/controller/deployment/config/zz_generated.deepcopy.go
generated
Normal file
38
pkg/controller/deployment/config/zz_generated.deepcopy.go
generated
Normal file
@ -0,0 +1,38 @@
|
||||
// +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
|
||||
|
||||
// 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
|
||||
}
|
@ -77,6 +77,9 @@ filegroup(
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [":package-srcs"],
|
||||
srcs = [
|
||||
":package-srcs",
|
||||
"//pkg/controller/endpoint/config:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
)
|
||||
|
29
pkg/controller/endpoint/config/BUILD
Normal file
29
pkg/controller/endpoint/config/BUILD
Normal file
@ -0,0 +1,29 @@
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = [
|
||||
"doc.go",
|
||||
"types.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
importpath = "k8s.io/kubernetes/pkg/controller/endpoint/config",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "package-srcs",
|
||||
srcs = glob(["**"]),
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:private"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [
|
||||
":package-srcs",
|
||||
"//pkg/controller/endpoint/config/v1alpha1:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
14
pkg/controller/endpoint/config/OWNERS
Normal file
14
pkg/controller/endpoint/config/OWNERS
Normal file
@ -0,0 +1,14 @@
|
||||
approvers:
|
||||
- api-approvers
|
||||
- deads2k
|
||||
- luxas
|
||||
- mtaufen
|
||||
- sttts
|
||||
- stewart-yu
|
||||
reviewers:
|
||||
- api-reviewers
|
||||
- deads2k
|
||||
- luxas
|
||||
- mtaufen
|
||||
- sttts
|
||||
- stewart-yu
|
19
pkg/controller/endpoint/config/doc.go
Normal file
19
pkg/controller/endpoint/config/doc.go
Normal file
@ -0,0 +1,19 @@
|
||||
/*
|
||||
Copyright 2019 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/endpoint/config"
|
25
pkg/controller/endpoint/config/types.go
Normal file
25
pkg/controller/endpoint/config/types.go
Normal file
@ -0,0 +1,25 @@
|
||||
/*
|
||||
Copyright 2019 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
|
||||
|
||||
// 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,
|
||||
// but more CPU (and network) load.
|
||||
ConcurrentEndpointSyncs int32
|
||||
}
|
36
pkg/controller/endpoint/config/v1alpha1/BUILD
Normal file
36
pkg/controller/endpoint/config/v1alpha1/BUILD
Normal file
@ -0,0 +1,36 @@
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = [
|
||||
"conversion.go",
|
||||
"defaults.go",
|
||||
"doc.go",
|
||||
"register.go",
|
||||
"zz_generated.conversion.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
importpath = "k8s.io/kubernetes/pkg/controller/endpoint/config/v1alpha1",
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [
|
||||
"//pkg/controller/endpoint/config: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/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"],
|
||||
)
|
40
pkg/controller/endpoint/config/v1alpha1/conversion.go
Normal file
40
pkg/controller/endpoint/config/v1alpha1/conversion.go
Normal file
@ -0,0 +1,40 @@
|
||||
/*
|
||||
Copyright 2019 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"
|
||||
endpointconfig "k8s.io/kubernetes/pkg/controller/endpoint/config"
|
||||
)
|
||||
|
||||
// Important! The public back-and-forth conversion functions for the types in this package
|
||||
// with EndpointControllerConfiguration 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_EndpointControllerConfiguration_To_config_EndpointControllerConfiguration is an autogenerated conversion function.
|
||||
func Convert_v1alpha1_EndpointControllerConfiguration_To_config_EndpointControllerConfiguration(in *v1alpha1.EndpointControllerConfiguration, out *endpointconfig.EndpointControllerConfiguration, s conversion.Scope) error {
|
||||
return autoConvert_v1alpha1_EndpointControllerConfiguration_To_config_EndpointControllerConfiguration(in, out, s)
|
||||
}
|
||||
|
||||
// Convert_config_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration is an autogenerated conversion function.
|
||||
func Convert_config_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(in *endpointconfig.EndpointControllerConfiguration, out *v1alpha1.EndpointControllerConfiguration, s conversion.Scope) error {
|
||||
return autoConvert_config_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(in, out, s)
|
||||
}
|
36
pkg/controller/endpoint/config/v1alpha1/defaults.go
Normal file
36
pkg/controller/endpoint/config/v1alpha1/defaults.go
Normal file
@ -0,0 +1,36 @@
|
||||
/*
|
||||
Copyright 2019 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 (
|
||||
kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||
)
|
||||
|
||||
// RecommendedDefaultEndpointControllerConfiguration defaults a pointer to a
|
||||
// EndpointControllerConfiguration struct. This will set the recommended default
|
||||
// values, but they may be subject to change between API versions. This function
|
||||
// is intentionally not registered in the scheme as a "normal" `SetDefaults_Foo`
|
||||
// function to allow consumers of this type to set whatever defaults for their
|
||||
// embedded configs. Forcing consumers to use these defaults would be problematic
|
||||
// as defaulting in the scheme is done as part of the conversion, and there would
|
||||
// be no easy way to opt-out. Instead, if you want to use this defaulting method
|
||||
// run it in your wrapper struct of this type in its `SetDefaults_` method.
|
||||
func RecommendedDefaultEndpointControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.EndpointControllerConfiguration) {
|
||||
if obj.ConcurrentEndpointSyncs == 0 {
|
||||
obj.ConcurrentEndpointSyncs = 5
|
||||
}
|
||||
}
|
21
pkg/controller/endpoint/config/v1alpha1/doc.go
Normal file
21
pkg/controller/endpoint/config/v1alpha1/doc.go
Normal file
@ -0,0 +1,21 @@
|
||||
/*
|
||||
Copyright 2019 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:conversion-gen=k8s.io/kubernetes/pkg/controller/endpoint/config
|
||||
// +k8s:conversion-gen-external-types=k8s.io/kube-controller-manager/config/v1alpha1
|
||||
|
||||
package v1alpha1 // import "k8s.io/kubernetes/pkg/controller/endpoint/config/v1alpha1"
|
31
pkg/controller/endpoint/config/v1alpha1/register.go
Normal file
31
pkg/controller/endpoint/config/v1alpha1/register.go
Normal file
@ -0,0 +1,31 @@
|
||||
/*
|
||||
Copyright 2019 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"
|
||||
)
|
||||
|
||||
var (
|
||||
// SchemeBuilder is the scheme builder with scheme init functions to run for this API package
|
||||
SchemeBuilder runtime.SchemeBuilder
|
||||
// localSchemeBuilder extends the SchemeBuilder instance with the external types. In this package,
|
||||
// defaulting and conversion init funcs are registered as well.
|
||||
localSchemeBuilder = &SchemeBuilder
|
||||
// AddToScheme is a global function that registers this API group & version to a scheme
|
||||
AddToScheme = localSchemeBuilder.AddToScheme
|
||||
)
|
101
pkg/controller/endpoint/config/v1alpha1/zz_generated.conversion.go
generated
Normal file
101
pkg/controller/endpoint/config/v1alpha1/zz_generated.conversion.go
generated
Normal file
@ -0,0 +1,101 @@
|
||||
// +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 (
|
||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
conversion "k8s.io/apimachinery/pkg/conversion"
|
||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||
v1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||
config "k8s.io/kubernetes/pkg/controller/endpoint/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.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.GroupResource)(nil), (*v1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||
return Convert_v1alpha1_GroupResource_To_v1_GroupResource(a.(*v1alpha1.GroupResource), b.(*v1.GroupResource), scope)
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := s.AddGeneratedConversionFunc((*v1.GroupResource)(nil), (*v1alpha1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||
return Convert_v1_GroupResource_To_v1alpha1_GroupResource(a.(*v1.GroupResource), b.(*v1alpha1.GroupResource), scope)
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := s.AddConversionFunc((*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.AddConversionFunc((*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
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func autoConvert_v1alpha1_EndpointControllerConfiguration_To_config_EndpointControllerConfiguration(in *v1alpha1.EndpointControllerConfiguration, out *config.EndpointControllerConfiguration, s conversion.Scope) error {
|
||||
out.ConcurrentEndpointSyncs = in.ConcurrentEndpointSyncs
|
||||
return nil
|
||||
}
|
||||
|
||||
func autoConvert_config_EndpointControllerConfiguration_To_v1alpha1_EndpointControllerConfiguration(in *config.EndpointControllerConfiguration, out *v1alpha1.EndpointControllerConfiguration, s conversion.Scope) error {
|
||||
out.ConcurrentEndpointSyncs = in.ConcurrentEndpointSyncs
|
||||
return nil
|
||||
}
|
||||
|
||||
func autoConvert_v1alpha1_GroupResource_To_v1_GroupResource(in *v1alpha1.GroupResource, out *v1.GroupResource, s conversion.Scope) error {
|
||||
out.Group = in.Group
|
||||
out.Resource = in.Resource
|
||||
return nil
|
||||
}
|
||||
|
||||
// Convert_v1alpha1_GroupResource_To_v1_GroupResource is an autogenerated conversion function.
|
||||
func Convert_v1alpha1_GroupResource_To_v1_GroupResource(in *v1alpha1.GroupResource, out *v1.GroupResource, s conversion.Scope) error {
|
||||
return autoConvert_v1alpha1_GroupResource_To_v1_GroupResource(in, out, s)
|
||||
}
|
||||
|
||||
func autoConvert_v1_GroupResource_To_v1alpha1_GroupResource(in *v1.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error {
|
||||
out.Group = in.Group
|
||||
out.Resource = in.Resource
|
||||
return nil
|
||||
}
|
||||
|
||||
// Convert_v1_GroupResource_To_v1alpha1_GroupResource is an autogenerated conversion function.
|
||||
func Convert_v1_GroupResource_To_v1alpha1_GroupResource(in *v1.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error {
|
||||
return autoConvert_v1_GroupResource_To_v1alpha1_GroupResource(in, out, s)
|
||||
}
|
21
pkg/controller/endpoint/config/v1alpha1/zz_generated.deepcopy.go
generated
Normal file
21
pkg/controller/endpoint/config/v1alpha1/zz_generated.deepcopy.go
generated
Normal file
@ -0,0 +1,21 @@
|
||||
// +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
|
37
pkg/controller/endpoint/config/zz_generated.deepcopy.go
generated
Normal file
37
pkg/controller/endpoint/config/zz_generated.deepcopy.go
generated
Normal file
@ -0,0 +1,37 @@
|
||||
// +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
|
||||
|
||||
// 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
|
||||
}
|
@ -94,6 +94,7 @@ filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [
|
||||
":package-srcs",
|
||||
"//pkg/controller/garbagecollector/config:all-srcs",
|
||||
"//pkg/controller/garbagecollector/metaonly:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
|
29
pkg/controller/garbagecollector/config/BUILD
Normal file
29
pkg/controller/garbagecollector/config/BUILD
Normal file
@ -0,0 +1,29 @@
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = [
|
||||
"doc.go",
|
||||
"types.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
importpath = "k8s.io/kubernetes/pkg/controller/garbagecollector/config",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "package-srcs",
|
||||
srcs = glob(["**"]),
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:private"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [
|
||||
":package-srcs",
|
||||
"//pkg/controller/garbagecollector/config/v1alpha1:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
14
pkg/controller/garbagecollector/config/OWNERS
Normal file
14
pkg/controller/garbagecollector/config/OWNERS
Normal file
@ -0,0 +1,14 @@
|
||||
approvers:
|
||||
- api-approvers
|
||||
- deads2k
|
||||
- luxas
|
||||
- mtaufen
|
||||
- sttts
|
||||
- stewart-yu
|
||||
reviewers:
|
||||
- api-reviewers
|
||||
- deads2k
|
||||
- luxas
|
||||
- mtaufen
|
||||
- sttts
|
||||
- stewart-yu
|
19
pkg/controller/garbagecollector/config/doc.go
Normal file
19
pkg/controller/garbagecollector/config/doc.go
Normal file
@ -0,0 +1,19 @@
|
||||
/*
|
||||
Copyright 2019 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/garbagecollector/config"
|
38
pkg/controller/garbagecollector/config/types.go
Normal file
38
pkg/controller/garbagecollector/config/types.go
Normal file
@ -0,0 +1,38 @@
|
||||
/*
|
||||
Copyright 2019 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
|
||||
|
||||
// GroupResource describes an group resource.
|
||||
type GroupResource struct {
|
||||
// group is the group portion of the GroupResource.
|
||||
Group string
|
||||
// resource is the resource portion of the GroupResource.
|
||||
Resource string
|
||||
}
|
||||
|
||||
// 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
|
||||
// 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
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user