mirror of https://github.com/k3s-io/k3s
Remove references to 'pkg/apis/componentconfig/install' and fix inconsistencies
parent
a224e53dab
commit
e50340ee23
|
@ -57,6 +57,11 @@ API rule violation: names_match,k8s.io/apimachinery/pkg/runtime,Unknown,ContentT
|
||||||
API rule violation: names_match,k8s.io/apimachinery/pkg/util/intstr,IntOrString,Type
|
API rule violation: names_match,k8s.io/apimachinery/pkg/util/intstr,IntOrString,Type
|
||||||
API rule violation: names_match,k8s.io/apimachinery/pkg/util/intstr,IntOrString,IntVal
|
API rule violation: names_match,k8s.io/apimachinery/pkg/util/intstr,IntOrString,IntVal
|
||||||
API rule violation: names_match,k8s.io/apimachinery/pkg/util/intstr,IntOrString,StrVal
|
API rule violation: names_match,k8s.io/apimachinery/pkg/util/intstr,IntOrString,StrVal
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,AttachDetachControllerConfiguration,DisableAttachDetachReconcilerSync
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,AttachDetachControllerConfiguration,ReconcilerSyncLoopPeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CSRSigningControllerConfiguration,ClusterSigningCertFile
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CSRSigningControllerConfiguration,ClusterSigningKeyFile
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CSRSigningControllerConfiguration,ClusterSigningDuration
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,CloudProvider
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,CloudProvider
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,Debugging
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,Debugging
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,GenericComponent
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,GenericComponent
|
||||||
|
@ -64,7 +69,45 @@ API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alp
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,ServiceController
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,ServiceController
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,NodeStatusUpdateFrequency
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudControllerManagerConfiguration,NodeStatusUpdateFrequency
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudProviderConfiguration,Name
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudProviderConfiguration,Name
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,CloudProviderConfiguration,CloudConfigFile
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DaemonSetControllerConfiguration,ConcurrentDaemonSetSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DebuggingConfiguration,EnableProfiling
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DebuggingConfiguration,EnableContentionProfiling
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DeploymentControllerConfiguration,ConcurrentDeploymentSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DeploymentControllerConfiguration,DeploymentControllerSyncPeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DeprecatedControllerConfiguration,DeletingPodsQps
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DeprecatedControllerConfiguration,DeletingPodsBurst
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,DeprecatedControllerConfiguration,RegisterRetryCount
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,EndPointControllerConfiguration,ConcurrentEndpointSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GarbageCollectorControllerConfiguration,EnableGarbageCollector
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GarbageCollectorControllerConfiguration,ConcurrentGCSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GarbageCollectorControllerConfiguration,GCIgnoredResources
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericComponentConfiguration,MinResyncPeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericComponentConfiguration,ContentType
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericComponentConfiguration,KubeAPIQPS
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericComponentConfiguration,KubeAPIBurst
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericComponentConfiguration,ControllerStartInterval
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GenericComponentConfiguration,LeaderElection
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GroupResource,Group
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,GroupResource,Resource
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerSyncPeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerUpscaleForbiddenWindow
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerDownscaleForbiddenWindow
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerTolerance
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,HPAControllerConfiguration,HorizontalPodAutoscalerUseRESTClients
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,JobControllerConfiguration,ConcurrentJobSyncs
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,JobControllerConfiguration,ConcurrentJobSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,Port
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,Address
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,UseServiceAccountCredentials
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,AllowUntaggedCloud
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,RouteReconciliationPeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,NodeMonitorPeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,ClusterName
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,ClusterCIDR
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,AllocateNodeCIDRs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,CIDRAllocatorType
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,ConfigureCloudRoutes
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeCloudSharedConfiguration,NodeSyncPeriod
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,CloudProvider
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,CloudProvider
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,Debugging
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,Debugging
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,GenericComponent
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,GenericComponent
|
||||||
|
@ -88,6 +131,42 @@ API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alp
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,ResourceQuotaController
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,ResourceQuotaController
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,SAController
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,SAController
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,ServiceController
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,ServiceController
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,Controllers
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,KubeControllerManagerConfiguration,ExternalCloudVolumePlugin
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NamespaceControllerConfiguration,NamespaceSyncPeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NamespaceControllerConfiguration,ConcurrentNamespaceSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeIpamControllerConfiguration,ServiceCIDR
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeIpamControllerConfiguration,NodeCIDRMaskSize
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,EnableTaintManager
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,NodeEvictionRate
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,SecondaryNodeEvictionRate
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,NodeStartupGracePeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,NodeMonitorGracePeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,PodEvictionTimeout
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,LargeClusterSizeThreshold
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,NodeLifecycleControllerConfiguration,UnhealthyZoneThreshold
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeBinderControllerConfiguration,PVClaimBinderSyncPeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeBinderControllerConfiguration,VolumeConfiguration
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,MaximumRetry
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,MinimumTimeoutNFS
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,PodTemplateFilePathNFS
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,IncrementTimeoutNFS
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,PodTemplateFilePathHostPath
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,MinimumTimeoutHostPath
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PersistentVolumeRecyclerConfiguration,IncrementTimeoutHostPath
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,PodGCControllerConfiguration,TerminatedPodGCThreshold
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,ReplicaSetControllerConfiguration,ConcurrentRSSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,ReplicationControllerConfiguration,ConcurrentRCSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,ResourceQuotaControllerConfiguration,ResourceQuotaSyncPeriod
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,ResourceQuotaControllerConfiguration,ConcurrentResourceQuotaSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,SAControllerConfiguration,ServiceAccountKeyFile
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,SAControllerConfiguration,ConcurrentSATokenSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,SAControllerConfiguration,RootCAFile
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,ServiceControllerConfiguration,ConcurrentServiceSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,VolumeConfiguration,EnableHostPathProvisioning
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,VolumeConfiguration,EnableDynamicProvisioning
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,VolumeConfiguration,PersistentVolumeRecyclerConfiguration
|
||||||
|
API rule violation: names_match,k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1,VolumeConfiguration,FlexVolumePluginDir
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/kubelet/apis/kubeletconfig/v1beta1,KubeletConfiguration,ResolverConfig
|
API rule violation: names_match,k8s.io/kubernetes/pkg/kubelet/apis/kubeletconfig/v1beta1,KubeletConfiguration,ResolverConfig
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/kubelet/apis/kubeletconfig/v1beta1,KubeletConfiguration,IPTablesMasqueradeBit
|
API rule violation: names_match,k8s.io/kubernetes/pkg/kubelet/apis/kubeletconfig/v1beta1,KubeletConfiguration,IPTablesMasqueradeBit
|
||||||
API rule violation: names_match,k8s.io/kubernetes/pkg/kubelet/apis/kubeletconfig/v1beta1,KubeletConfiguration,IPTablesDropBit
|
API rule violation: names_match,k8s.io/kubernetes/pkg/kubelet/apis/kubeletconfig/v1beta1,KubeletConfiguration,IPTablesDropBit
|
||||||
|
|
|
@ -94,6 +94,7 @@ done
|
||||||
packages_without_install=(
|
packages_without_install=(
|
||||||
"k8s.io/kubernetes/pkg/apis/abac"
|
"k8s.io/kubernetes/pkg/apis/abac"
|
||||||
"k8s.io/kubernetes/pkg/apis/admission"
|
"k8s.io/kubernetes/pkg/apis/admission"
|
||||||
|
"k8s.io/kubernetes/pkg/apis/componentconfig" # TODO: Remove this package completely and from this list
|
||||||
)
|
)
|
||||||
known_version_files=(
|
known_version_files=(
|
||||||
"pkg/master/import_known_versions.go"
|
"pkg/master/import_known_versions.go"
|
||||||
|
|
|
@ -61,7 +61,6 @@ import (
|
||||||
_ "k8s.io/kubernetes/pkg/apis/autoscaling/install"
|
_ "k8s.io/kubernetes/pkg/apis/autoscaling/install"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/batch/install"
|
_ "k8s.io/kubernetes/pkg/apis/batch/install"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/certificates/install"
|
_ "k8s.io/kubernetes/pkg/apis/certificates/install"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig/install"
|
|
||||||
_ "k8s.io/kubernetes/pkg/apis/coordination/install"
|
_ "k8s.io/kubernetes/pkg/apis/coordination/install"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/core/install"
|
_ "k8s.io/kubernetes/pkg/apis/core/install"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/events/install"
|
_ "k8s.io/kubernetes/pkg/apis/events/install"
|
||||||
|
|
|
@ -88,9 +88,6 @@ func TestDefaulting(t *testing.T) {
|
||||||
{Group: "batch", Version: "v2alpha1", Kind: "JobTemplate"}: {},
|
{Group: "batch", Version: "v2alpha1", Kind: "JobTemplate"}: {},
|
||||||
{Group: "certificates.k8s.io", Version: "v1beta1", Kind: "CertificateSigningRequest"}: {},
|
{Group: "certificates.k8s.io", Version: "v1beta1", Kind: "CertificateSigningRequest"}: {},
|
||||||
{Group: "certificates.k8s.io", Version: "v1beta1", Kind: "CertificateSigningRequestList"}: {},
|
{Group: "certificates.k8s.io", Version: "v1beta1", Kind: "CertificateSigningRequestList"}: {},
|
||||||
{Group: "componentconfig", Version: "v1alpha1", Kind: "KubeProxyConfiguration"}: {},
|
|
||||||
{Group: "componentconfig", Version: "v1alpha1", Kind: "KubeSchedulerConfiguration"}: {},
|
|
||||||
{Group: "componentconfig", Version: "v1alpha1", Kind: "KubeletConfiguration"}: {},
|
|
||||||
{Group: "kubeadm.k8s.io", Version: "v1alpha1", Kind: "MasterConfiguration"}: {},
|
{Group: "kubeadm.k8s.io", Version: "v1alpha1", Kind: "MasterConfiguration"}: {},
|
||||||
// This object contains only int fields which currently breaks the defaulting test because
|
// This object contains only int fields which currently breaks the defaulting test because
|
||||||
// it's pretty stupid. Once we add non integer fields, we should uncomment this.
|
// it's pretty stupid. Once we add non integer fields, we should uncomment this.
|
||||||
|
|
|
@ -205,11 +205,7 @@ func TestCommonKindsRegistered(t *testing.T) {
|
||||||
func TestRoundTripTypes(t *testing.T) {
|
func TestRoundTripTypes(t *testing.T) {
|
||||||
seed := rand.Int63()
|
seed := rand.Int63()
|
||||||
fuzzer := fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(seed), legacyscheme.Codecs)
|
fuzzer := fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(seed), legacyscheme.Codecs)
|
||||||
|
nonRoundTrippableTypes := map[schema.GroupVersionKind]bool{}
|
||||||
nonRoundTrippableTypes := map[schema.GroupVersionKind]bool{
|
|
||||||
{Group: "componentconfig", Version: runtime.APIVersionInternal, Kind: "KubeProxyConfiguration"}: true,
|
|
||||||
{Group: "componentconfig", Version: runtime.APIVersionInternal, Kind: "KubeSchedulerConfiguration"}: true,
|
|
||||||
}
|
|
||||||
|
|
||||||
roundtrip.RoundTripTypes(t, legacyscheme.Scheme, legacyscheme.Codecs, fuzzer, nonRoundTrippableTypes)
|
roundtrip.RoundTripTypes(t, legacyscheme.Scheme, legacyscheme.Codecs, fuzzer, nonRoundTrippableTypes)
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,43 +1,18 @@
|
||||||
|
approvers:
|
||||||
|
- api-approvers
|
||||||
|
- mikedanese
|
||||||
|
- vishh
|
||||||
|
- mtaufen
|
||||||
|
- luxas
|
||||||
|
- sttts
|
||||||
reviewers:
|
reviewers:
|
||||||
|
- api-reviewers
|
||||||
- thockin
|
- thockin
|
||||||
- lavalamp
|
- lavalamp
|
||||||
- smarterclayton
|
- smarterclayton
|
||||||
- wojtek-t
|
- wojtek-t
|
||||||
- deads2k
|
- deads2k
|
||||||
- yujuhong
|
|
||||||
- derekwaynecarr
|
|
||||||
- caesarxuchao
|
|
||||||
- vishh
|
- vishh
|
||||||
- mikedanese
|
- mikedanese
|
||||||
- liggitt
|
- liggitt
|
||||||
- nikhiljindal
|
|
||||||
- gmarek
|
|
||||||
- sttts
|
|
||||||
- dchen1107
|
|
||||||
- saad-ali
|
|
||||||
- luxas
|
- luxas
|
||||||
- justinsb
|
|
||||||
- pwittrock
|
|
||||||
- ncdc
|
|
||||||
- yifan-gu
|
|
||||||
- mwielgus
|
|
||||||
- feiskyer
|
|
||||||
- dims
|
|
||||||
- errordeveloper
|
|
||||||
- mtaufen
|
|
||||||
- markturansky
|
|
||||||
- freehan
|
|
||||||
- mml
|
|
||||||
- ingvagabund
|
|
||||||
- cjcullen
|
|
||||||
- mbohlool
|
|
||||||
- jessfraz
|
|
||||||
- david-mcmahon
|
|
||||||
- therc
|
|
||||||
- '249043822'
|
|
||||||
- mqliang
|
|
||||||
- mfanjie
|
|
||||||
approvers:
|
|
||||||
- mikedanese
|
|
||||||
- vishh
|
|
||||||
- mtaufen
|
|
||||||
|
|
|
@ -21,6 +21,9 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
// Funcs returns the fuzzer functions for the componentconfig api group.
|
// Funcs returns the fuzzer functions for the componentconfig api group.
|
||||||
|
// TODO: When the componentconfig types are split out to individual API groups
|
||||||
|
// we should re-enable the fuzzing and defaulting unit tests. Also add a
|
||||||
|
// TestTypeTags-kind of unit test like in `pkg/master`
|
||||||
var Funcs = func(codecs runtimeserializer.CodecFactory) []interface{} {
|
var Funcs = func(codecs runtimeserializer.CodecFactory) []interface{} {
|
||||||
return []interface{}{}
|
return []interface{}{}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,38 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 2015 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 install installs the experimental API group, making it available as
|
|
||||||
// an option to all of the API encoding/decoding machinery.
|
|
||||||
package install
|
|
||||||
|
|
||||||
import (
|
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
|
||||||
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
|
|
||||||
"k8s.io/kubernetes/pkg/api/legacyscheme"
|
|
||||||
"k8s.io/kubernetes/pkg/apis/componentconfig"
|
|
||||||
"k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1"
|
|
||||||
)
|
|
||||||
|
|
||||||
func init() {
|
|
||||||
Install(legacyscheme.Scheme)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Install registers the API group and adds types to a scheme
|
|
||||||
func Install(scheme *runtime.Scheme) {
|
|
||||||
utilruntime.Must(componentconfig.AddToScheme(scheme))
|
|
||||||
utilruntime.Must(v1alpha1.AddToScheme(scheme))
|
|
||||||
utilruntime.Must(scheme.SetVersionPriority(v1alpha1.SchemeGroupVersion))
|
|
||||||
}
|
|
|
@ -21,29 +21,31 @@ import (
|
||||||
"k8s.io/apimachinery/pkg/runtime/schema"
|
"k8s.io/apimachinery/pkg/runtime/schema"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
|
||||||
SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
|
|
||||||
AddToScheme = SchemeBuilder.AddToScheme
|
|
||||||
)
|
|
||||||
|
|
||||||
// GroupName is the group name use in this package
|
// GroupName is the group name use in this package
|
||||||
const GroupName = "componentconfig"
|
const GroupName = "componentconfig"
|
||||||
|
|
||||||
// SchemeGroupVersion is group version used to register these objects
|
// SchemeGroupVersion is group version used to register these objects
|
||||||
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}
|
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}
|
||||||
|
|
||||||
|
var (
|
||||||
|
SchemeBuilder runtime.SchemeBuilder
|
||||||
|
localSchemeBuilder = &SchemeBuilder
|
||||||
|
AddToScheme = localSchemeBuilder.AddToScheme
|
||||||
|
)
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
// We only register manually written functions here. The registration of the
|
||||||
|
// generated functions takes place in the generated files. The separation
|
||||||
|
// makes the code compile even when the generated files are missing.
|
||||||
|
localSchemeBuilder.Register(addKnownTypes)
|
||||||
|
}
|
||||||
|
|
||||||
// Kind takes an unqualified kind and returns a Group qualified GroupKind
|
// Kind takes an unqualified kind and returns a Group qualified GroupKind
|
||||||
func Kind(kind string) schema.GroupKind {
|
func Kind(kind string) schema.GroupKind {
|
||||||
return SchemeGroupVersion.WithKind(kind).GroupKind()
|
return SchemeGroupVersion.WithKind(kind).GroupKind()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Resource takes an unqualified resource and returns a Group qualified GroupResource
|
|
||||||
func Resource(resource string) schema.GroupResource {
|
|
||||||
return SchemeGroupVersion.WithResource(resource).GroupResource()
|
|
||||||
}
|
|
||||||
|
|
||||||
func addKnownTypes(scheme *runtime.Scheme) error {
|
func addKnownTypes(scheme *runtime.Scheme) error {
|
||||||
// TODO this will get cleaned up with the scheme types are fixed
|
|
||||||
scheme.AddKnownTypes(SchemeGroupVersion,
|
scheme.AddKnownTypes(SchemeGroupVersion,
|
||||||
&KubeSchedulerConfiguration{},
|
&KubeSchedulerConfiguration{},
|
||||||
)
|
)
|
||||||
|
|
|
@ -28,8 +28,6 @@ const GroupName = "componentconfig"
|
||||||
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
|
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
// TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api.
|
|
||||||
// localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes.
|
|
||||||
SchemeBuilder runtime.SchemeBuilder
|
SchemeBuilder runtime.SchemeBuilder
|
||||||
localSchemeBuilder = &SchemeBuilder
|
localSchemeBuilder = &SchemeBuilder
|
||||||
AddToScheme = localSchemeBuilder.AddToScheme
|
AddToScheme = localSchemeBuilder.AddToScheme
|
||||||
|
|
|
@ -21,6 +21,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
// ClientConnectionConfiguration contains details for constructing a client.
|
// ClientConnectionConfiguration contains details for constructing a client.
|
||||||
|
// TODO: This struct should be referenced from k8s.io/apimachinery/pkg/apis/config instead.
|
||||||
type ClientConnectionConfiguration struct {
|
type ClientConnectionConfiguration struct {
|
||||||
// kubeconfig is the path to a KubeConfig file.
|
// kubeconfig is the path to a KubeConfig file.
|
||||||
Kubeconfig string `json:"kubeconfig"`
|
Kubeconfig string `json:"kubeconfig"`
|
||||||
|
@ -152,28 +153,28 @@ type KubeSchedulerLeaderElectionConfiguration struct {
|
||||||
type PersistentVolumeRecyclerConfiguration struct {
|
type PersistentVolumeRecyclerConfiguration struct {
|
||||||
// maximumRetry is number of retries the PV recycler will execute on failure to recycle
|
// maximumRetry is number of retries the PV recycler will execute on failure to recycle
|
||||||
// PV.
|
// PV.
|
||||||
MaximumRetry int32 `json:"maximumRetry"`
|
MaximumRetry int32
|
||||||
// minimumTimeoutNFS is the minimum ActiveDeadlineSeconds to use for an NFS Recycler
|
// minimumTimeoutNFS is the minimum ActiveDeadlineSeconds to use for an NFS Recycler
|
||||||
// pod.
|
// pod.
|
||||||
MinimumTimeoutNFS int32 `json:"minimumTimeoutNFS"`
|
MinimumTimeoutNFS int32
|
||||||
// podTemplateFilePathNFS is the file path to a pod definition used as a template for
|
// podTemplateFilePathNFS is the file path to a pod definition used as a template for
|
||||||
// NFS persistent volume recycling
|
// NFS persistent volume recycling
|
||||||
PodTemplateFilePathNFS string `json:"podTemplateFilePathNFS"`
|
PodTemplateFilePathNFS string
|
||||||
// incrementTimeoutNFS is the increment of time added per Gi to ActiveDeadlineSeconds
|
// incrementTimeoutNFS is the increment of time added per Gi to ActiveDeadlineSeconds
|
||||||
// for an NFS scrubber pod.
|
// for an NFS scrubber pod.
|
||||||
IncrementTimeoutNFS int32 `json:"incrementTimeoutNFS"`
|
IncrementTimeoutNFS int32
|
||||||
// podTemplateFilePathHostPath is the file path to a pod definition used as a template for
|
// 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
|
// HostPath persistent volume recycling. This is for development and testing only and
|
||||||
// will not work in a multi-node cluster.
|
// will not work in a multi-node cluster.
|
||||||
PodTemplateFilePathHostPath string `json:"podTemplateFilePathHostPath"`
|
PodTemplateFilePathHostPath string
|
||||||
// minimumTimeoutHostPath is the minimum ActiveDeadlineSeconds to use for a HostPath
|
// 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
|
// Recycler pod. This is for development and testing only and will not work in a multi-node
|
||||||
// cluster.
|
// cluster.
|
||||||
MinimumTimeoutHostPath int32 `json:"minimumTimeoutHostPath"`
|
MinimumTimeoutHostPath int32
|
||||||
// incrementTimeoutHostPath is the increment of time added per Gi to ActiveDeadlineSeconds
|
// 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
|
// for a HostPath scrubber pod. This is for development and testing only and will not work
|
||||||
// in a multi-node cluster.
|
// in a multi-node cluster.
|
||||||
IncrementTimeoutHostPath int32 `json:"incrementTimeoutHostPath"`
|
IncrementTimeoutHostPath int32
|
||||||
}
|
}
|
||||||
|
|
||||||
// VolumeConfiguration contains *all* enumerated flags meant to configure all volume
|
// VolumeConfiguration contains *all* enumerated flags meant to configure all volume
|
||||||
|
@ -186,22 +187,22 @@ type VolumeConfiguration struct {
|
||||||
// cloud provider. This allows testing and development of provisioning features. HostPath
|
// 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
|
// 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.
|
// should not be used for anything other than testing or development.
|
||||||
EnableHostPathProvisioning *bool `json:"enableHostPathProvisioning"`
|
EnableHostPathProvisioning *bool
|
||||||
// enableDynamicProvisioning enables the provisioning of volumes when running within an environment
|
// enableDynamicProvisioning enables the provisioning of volumes when running within an environment
|
||||||
// that supports dynamic provisioning. Defaults to true.
|
// that supports dynamic provisioning. Defaults to true.
|
||||||
EnableDynamicProvisioning *bool `json:"enableDynamicProvisioning"`
|
EnableDynamicProvisioning *bool
|
||||||
// persistentVolumeRecyclerConfiguration holds configuration for persistent volume plugins.
|
// persistentVolumeRecyclerConfiguration holds configuration for persistent volume plugins.
|
||||||
PersistentVolumeRecyclerConfiguration PersistentVolumeRecyclerConfiguration `json:"persistentVolumeRecyclerConfiguration"`
|
PersistentVolumeRecyclerConfiguration PersistentVolumeRecyclerConfiguration
|
||||||
// volumePluginDir is the full path of the directory in which the flex
|
// volumePluginDir is the full path of the directory in which the flex
|
||||||
// volume plugin should search for additional third party volume plugins
|
// volume plugin should search for additional third party volume plugins
|
||||||
FlexVolumePluginDir string `json:"flexVolumePluginDir"`
|
FlexVolumePluginDir string
|
||||||
}
|
}
|
||||||
|
|
||||||
type GroupResource struct {
|
type GroupResource struct {
|
||||||
// group is the group portion of the GroupResource.
|
// group is the group portion of the GroupResource.
|
||||||
Group string `json:"group"`
|
Group string
|
||||||
// resource is the resource portion of the GroupResource.
|
// resource is the resource portion of the GroupResource.
|
||||||
Resource string `json:"resource"`
|
Resource string
|
||||||
}
|
}
|
||||||
|
|
||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||||
|
@ -280,10 +281,10 @@ type KubeControllerManagerConfiguration struct {
|
||||||
// 'foo' means "enable 'foo'"
|
// 'foo' means "enable 'foo'"
|
||||||
// '-foo' means "disable 'foo'"
|
// '-foo' means "disable 'foo'"
|
||||||
// first item for a particular name wins
|
// first item for a particular name wins
|
||||||
Controllers []string `json:"controllers"`
|
Controllers []string
|
||||||
// externalCloudVolumePlugin specifies the plugin to use when cloudProvider is "external".
|
// externalCloudVolumePlugin specifies the plugin to use when cloudProvider is "external".
|
||||||
// It is currently used by the in repo cloud providers to handle node and volume control in the KCM.
|
// It is currently used by the in repo cloud providers to handle node and volume control in the KCM.
|
||||||
ExternalCloudVolumePlugin string `json:"externalCloudVolumePlugin"`
|
ExternalCloudVolumePlugin string
|
||||||
}
|
}
|
||||||
|
|
||||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||||
|
@ -310,152 +311,152 @@ type CloudControllerManagerConfiguration struct {
|
||||||
|
|
||||||
type CloudProviderConfiguration struct {
|
type CloudProviderConfiguration struct {
|
||||||
// Name is the provider for cloud services.
|
// Name is the provider for cloud services.
|
||||||
Name string `json:"cloudProvider"`
|
Name string
|
||||||
// cloudConfigFile is the path to the cloud provider configuration file.
|
// cloudConfigFile is the path to the cloud provider configuration file.
|
||||||
CloudConfigFile string `json:"cloudConfigFile"`
|
CloudConfigFile string
|
||||||
}
|
}
|
||||||
|
|
||||||
type DebuggingConfiguration struct {
|
type DebuggingConfiguration struct {
|
||||||
// enableProfiling enables profiling via web interface host:port/debug/pprof/
|
// enableProfiling enables profiling via web interface host:port/debug/pprof/
|
||||||
EnableProfiling bool `json:"enableProfiling"`
|
EnableProfiling bool
|
||||||
// EnableContentionProfiling enables lock contention profiling, if
|
// EnableContentionProfiling enables lock contention profiling, if
|
||||||
// EnableProfiling is true.
|
// EnableProfiling is true.
|
||||||
EnableContentionProfiling bool `json:"enableContentionProfiling"`
|
EnableContentionProfiling bool
|
||||||
}
|
}
|
||||||
|
|
||||||
type GenericComponentConfiguration struct {
|
type GenericComponentConfiguration struct {
|
||||||
|
|
||||||
// minResyncPeriod is the resync period in reflectors; will be random between
|
// minResyncPeriod is the resync period in reflectors; will be random between
|
||||||
// minResyncPeriod and 2*minResyncPeriod.
|
// minResyncPeriod and 2*minResyncPeriod.
|
||||||
MinResyncPeriod metav1.Duration `json:"minResyncPeriod"`
|
MinResyncPeriod metav1.Duration
|
||||||
// contentType is contentType of requests sent to apiserver.
|
// contentType is contentType of requests sent to apiserver.
|
||||||
ContentType string `json:"contentType"`
|
ContentType string
|
||||||
// kubeAPIQPS is the QPS to use while talking with kubernetes apiserver.
|
// kubeAPIQPS is the QPS to use while talking with kubernetes apiserver.
|
||||||
KubeAPIQPS float32 `json:"kubeAPIQPS"`
|
KubeAPIQPS float32
|
||||||
// kubeAPIBurst is the burst to use while talking with kubernetes apiserver.
|
// kubeAPIBurst is the burst to use while talking with kubernetes apiserver.
|
||||||
KubeAPIBurst int32 `json:"kubeAPIBurst"`
|
KubeAPIBurst int32
|
||||||
// How long to wait between starting controller managers
|
// How long to wait between starting controller managers
|
||||||
ControllerStartInterval metav1.Duration `json:"controllerStartInterval"`
|
ControllerStartInterval metav1.Duration
|
||||||
// leaderElection defines the configuration of leader election client.
|
// leaderElection defines the configuration of leader election client.
|
||||||
LeaderElection LeaderElectionConfiguration `json:"leaderElection"`
|
LeaderElection LeaderElectionConfiguration
|
||||||
}
|
}
|
||||||
|
|
||||||
type KubeCloudSharedConfiguration struct {
|
type KubeCloudSharedConfiguration struct {
|
||||||
// port is the port that the controller-manager's http service runs on.
|
// port is the port that the controller-manager's http service runs on.
|
||||||
Port int32 `json:"port"`
|
Port int32
|
||||||
// address is the IP address to serve on (set to 0.0.0.0 for all interfaces).
|
// address is the IP address to serve on (set to 0.0.0.0 for all interfaces).
|
||||||
Address string `json:"address"`
|
Address string
|
||||||
// useServiceAccountCredentials indicates whether controllers should be run with
|
// useServiceAccountCredentials indicates whether controllers should be run with
|
||||||
// individual service account credentials.
|
// individual service account credentials.
|
||||||
UseServiceAccountCredentials bool `json:"useServiceAccountCredentials"`
|
UseServiceAccountCredentials bool
|
||||||
// run with untagged cloud instances
|
// run with untagged cloud instances
|
||||||
AllowUntaggedCloud bool `json:"allowUntaggedCloud"`
|
AllowUntaggedCloud bool
|
||||||
// routeReconciliationPeriod is the period for reconciling routes created for Nodes by cloud provider..
|
// routeReconciliationPeriod is the period for reconciling routes created for Nodes by cloud provider..
|
||||||
RouteReconciliationPeriod metav1.Duration `json:"routeReconciliationPeriod"`
|
RouteReconciliationPeriod metav1.Duration
|
||||||
// nodeMonitorPeriod is the period for syncing NodeStatus in NodeController.
|
// nodeMonitorPeriod is the period for syncing NodeStatus in NodeController.
|
||||||
NodeMonitorPeriod metav1.Duration `json:"nodeMonitorPeriod"`
|
NodeMonitorPeriod metav1.Duration
|
||||||
// clusterName is the instance prefix for the cluster.
|
// clusterName is the instance prefix for the cluster.
|
||||||
ClusterName string `json:"clusterName"`
|
ClusterName string
|
||||||
// clusterCIDR is CIDR Range for Pods in cluster.
|
// clusterCIDR is CIDR Range for Pods in cluster.
|
||||||
ClusterCIDR string `json:"clusterCIDR"`
|
ClusterCIDR string
|
||||||
// AllocateNodeCIDRs enables CIDRs for Pods to be allocated and, if
|
// AllocateNodeCIDRs enables CIDRs for Pods to be allocated and, if
|
||||||
// ConfigureCloudRoutes is true, to be set on the cloud provider.
|
// ConfigureCloudRoutes is true, to be set on the cloud provider.
|
||||||
AllocateNodeCIDRs bool `json:"allocateNodeCIDRs"`
|
AllocateNodeCIDRs bool
|
||||||
// CIDRAllocatorType determines what kind of pod CIDR allocator will be used.
|
// CIDRAllocatorType determines what kind of pod CIDR allocator will be used.
|
||||||
CIDRAllocatorType string `json:"cIDRAllocatorType"`
|
CIDRAllocatorType string
|
||||||
// configureCloudRoutes enables CIDRs allocated with allocateNodeCIDRs
|
// configureCloudRoutes enables CIDRs allocated with allocateNodeCIDRs
|
||||||
// to be configured on the cloud provider.
|
// to be configured on the cloud provider.
|
||||||
ConfigureCloudRoutes *bool `json:"configureCloudRoutes"`
|
ConfigureCloudRoutes *bool
|
||||||
// nodeSyncPeriod is the period for syncing nodes from cloudprovider. Longer
|
// nodeSyncPeriod is the period for syncing nodes from cloudprovider. Longer
|
||||||
// periods will result in fewer calls to cloud provider, but may delay addition
|
// periods will result in fewer calls to cloud provider, but may delay addition
|
||||||
// of new nodes to cluster.
|
// of new nodes to cluster.
|
||||||
NodeSyncPeriod metav1.Duration `json:"nodeSyncPeriod"`
|
NodeSyncPeriod metav1.Duration
|
||||||
}
|
}
|
||||||
|
|
||||||
type AttachDetachControllerConfiguration struct {
|
type AttachDetachControllerConfiguration struct {
|
||||||
// Reconciler runs a periodic loop to reconcile the desired state of the with
|
// Reconciler runs a periodic loop to reconcile the desired state of the with
|
||||||
// the actual state of the world by triggering attach detach operations.
|
// the actual state of the world by triggering attach detach operations.
|
||||||
// This flag enables or disables reconcile. Is false by default, and thus enabled.
|
// This flag enables or disables reconcile. Is false by default, and thus enabled.
|
||||||
DisableAttachDetachReconcilerSync bool `json:"disableAttachDetachReconcilerSync"`
|
DisableAttachDetachReconcilerSync bool
|
||||||
// ReconcilerSyncLoopPeriod is the amount of time the reconciler sync states loop
|
// ReconcilerSyncLoopPeriod is the amount of time the reconciler sync states loop
|
||||||
// wait between successive executions. Is set to 5 sec by default.
|
// wait between successive executions. Is set to 5 sec by default.
|
||||||
ReconcilerSyncLoopPeriod metav1.Duration `json:"reconcilerSyncLoopPeriod"`
|
ReconcilerSyncLoopPeriod metav1.Duration
|
||||||
}
|
}
|
||||||
|
|
||||||
type CSRSigningControllerConfiguration struct {
|
type CSRSigningControllerConfiguration struct {
|
||||||
// clusterSigningCertFile is the filename containing a PEM-encoded
|
// clusterSigningCertFile is the filename containing a PEM-encoded
|
||||||
// X509 CA certificate used to issue cluster-scoped certificates
|
// X509 CA certificate used to issue cluster-scoped certificates
|
||||||
ClusterSigningCertFile string `json:"clusterSigningCertFile"`
|
ClusterSigningCertFile string
|
||||||
// clusterSigningCertFile is the filename containing a PEM-encoded
|
// clusterSigningCertFile is the filename containing a PEM-encoded
|
||||||
// RSA or ECDSA private key used to issue cluster-scoped certificates
|
// RSA or ECDSA private key used to issue cluster-scoped certificates
|
||||||
ClusterSigningKeyFile string `json:"clusterSigningKeyFile"`
|
ClusterSigningKeyFile string
|
||||||
// clusterSigningDuration is the length of duration signed certificates
|
// clusterSigningDuration is the length of duration signed certificates
|
||||||
// will be given.
|
// will be given.
|
||||||
ClusterSigningDuration metav1.Duration `json:"clusterSigningDuration"`
|
ClusterSigningDuration metav1.Duration
|
||||||
}
|
}
|
||||||
|
|
||||||
type DaemonSetControllerConfiguration struct {
|
type DaemonSetControllerConfiguration struct {
|
||||||
// concurrentDaemonSetSyncs is the number of daemonset objects that are
|
// concurrentDaemonSetSyncs is the number of daemonset objects that are
|
||||||
// allowed to sync concurrently. Larger number = more responsive daemonset,
|
// allowed to sync concurrently. Larger number = more responsive daemonset,
|
||||||
// but more CPU (and network) load.
|
// but more CPU (and network) load.
|
||||||
ConcurrentDaemonSetSyncs int32 `json:"concurrentDaemonSetSyncs"`
|
ConcurrentDaemonSetSyncs int32
|
||||||
}
|
}
|
||||||
|
|
||||||
type DeploymentControllerConfiguration struct {
|
type DeploymentControllerConfiguration struct {
|
||||||
// concurrentDeploymentSyncs is the number of deployment objects that are
|
// concurrentDeploymentSyncs is the number of deployment objects that are
|
||||||
// allowed to sync concurrently. Larger number = more responsive deployments,
|
// allowed to sync concurrently. Larger number = more responsive deployments,
|
||||||
// but more CPU (and network) load.
|
// but more CPU (and network) load.
|
||||||
ConcurrentDeploymentSyncs int32 `json:"concurrentDeploymentSyncs"`
|
ConcurrentDeploymentSyncs int32
|
||||||
// deploymentControllerSyncPeriod is the period for syncing the deployments.
|
// deploymentControllerSyncPeriod is the period for syncing the deployments.
|
||||||
DeploymentControllerSyncPeriod metav1.Duration `json:"deploymentControllerSyncPeriod"`
|
DeploymentControllerSyncPeriod metav1.Duration
|
||||||
}
|
}
|
||||||
|
|
||||||
type DeprecatedControllerConfiguration struct {
|
type DeprecatedControllerConfiguration struct {
|
||||||
// DEPRECATED: deletingPodsQps is the number of nodes per second on which pods are deleted in
|
// DEPRECATED: deletingPodsQps is the number of nodes per second on which pods are deleted in
|
||||||
// case of node failure.
|
// case of node failure.
|
||||||
DeletingPodsQps float32 `json:"deletingPodsQps"`
|
DeletingPodsQps float32
|
||||||
// DEPRECATED: deletingPodsBurst is the number of nodes on which pods are bursty deleted in
|
// DEPRECATED: deletingPodsBurst is the number of nodes on which pods are bursty deleted in
|
||||||
// case of node failure. For more details look into RateLimiter.
|
// case of node failure. For more details look into RateLimiter.
|
||||||
DeletingPodsBurst int32 `json:"deletingPodsBurst"`
|
DeletingPodsBurst int32
|
||||||
// registerRetryCount is the number of retries for initial node registration.
|
// registerRetryCount is the number of retries for initial node registration.
|
||||||
// Retry interval equals node-sync-period.
|
// Retry interval equals node-sync-period.
|
||||||
RegisterRetryCount int32 `json:"registerRetryCount"`
|
RegisterRetryCount int32
|
||||||
}
|
}
|
||||||
|
|
||||||
type EndPointControllerConfiguration struct {
|
type EndPointControllerConfiguration struct {
|
||||||
// concurrentEndpointSyncs is the number of endpoint syncing operations
|
// concurrentEndpointSyncs is the number of endpoint syncing operations
|
||||||
// that will be done concurrently. Larger number = faster endpoint updating,
|
// that will be done concurrently. Larger number = faster endpoint updating,
|
||||||
// but more CPU (and network) load.
|
// but more CPU (and network) load.
|
||||||
ConcurrentEndpointSyncs int32 `json:"concurrentEndpointSyncs"`
|
ConcurrentEndpointSyncs int32
|
||||||
}
|
}
|
||||||
|
|
||||||
type GarbageCollectorControllerConfiguration struct {
|
type GarbageCollectorControllerConfiguration struct {
|
||||||
// enables the generic garbage collector. MUST be synced with the
|
// enables the generic garbage collector. MUST be synced with the
|
||||||
// corresponding flag of the kube-apiserver. WARNING: the generic garbage
|
// corresponding flag of the kube-apiserver. WARNING: the generic garbage
|
||||||
// collector is an alpha feature.
|
// collector is an alpha feature.
|
||||||
EnableGarbageCollector *bool `json:"enableGarbageCollector"`
|
EnableGarbageCollector *bool
|
||||||
// concurrentGCSyncs is the number of garbage collector workers that are
|
// concurrentGCSyncs is the number of garbage collector workers that are
|
||||||
// allowed to sync concurrently.
|
// allowed to sync concurrently.
|
||||||
ConcurrentGCSyncs int32 `json:"concurrentGCSyncs"`
|
ConcurrentGCSyncs int32
|
||||||
// gcIgnoredResources is the list of GroupResources that garbage collection should ignore.
|
// gcIgnoredResources is the list of GroupResources that garbage collection should ignore.
|
||||||
GCIgnoredResources []GroupResource `json:"gCIgnoredResources"`
|
GCIgnoredResources []GroupResource
|
||||||
}
|
}
|
||||||
|
|
||||||
type HPAControllerConfiguration struct {
|
type HPAControllerConfiguration struct {
|
||||||
// horizontalPodAutoscalerSyncPeriod is the period for syncing the number of
|
// horizontalPodAutoscalerSyncPeriod is the period for syncing the number of
|
||||||
// pods in horizontal pod autoscaler.
|
// pods in horizontal pod autoscaler.
|
||||||
HorizontalPodAutoscalerSyncPeriod metav1.Duration `json:"horizontalPodAutoscalerSyncPeriod"`
|
HorizontalPodAutoscalerSyncPeriod metav1.Duration
|
||||||
// horizontalPodAutoscalerUpscaleForbiddenWindow is a period after which next upscale allowed.
|
// horizontalPodAutoscalerUpscaleForbiddenWindow is a period after which next upscale allowed.
|
||||||
HorizontalPodAutoscalerUpscaleForbiddenWindow metav1.Duration `json:"horizontalPodAutoscalerUpscaleForbiddenWindow"`
|
HorizontalPodAutoscalerUpscaleForbiddenWindow metav1.Duration
|
||||||
// horizontalPodAutoscalerDownscaleForbiddenWindow is a period after which next downscale allowed.
|
// horizontalPodAutoscalerDownscaleForbiddenWindow is a period after which next downscale allowed.
|
||||||
HorizontalPodAutoscalerDownscaleForbiddenWindow metav1.Duration `json:"horizontalPodAutoscalerDownscaleForbiddenWindow"`
|
HorizontalPodAutoscalerDownscaleForbiddenWindow metav1.Duration
|
||||||
// horizontalPodAutoscalerTolerance is the tolerance for when
|
// horizontalPodAutoscalerTolerance is the tolerance for when
|
||||||
// resource usage suggests upscaling/downscaling
|
// resource usage suggests upscaling/downscaling
|
||||||
HorizontalPodAutoscalerTolerance float64 `json:"horizontalPodAutoscalerTolerance"`
|
HorizontalPodAutoscalerTolerance float64
|
||||||
// HorizontalPodAutoscalerUseRESTClients causes the HPA controller to use REST clients
|
// HorizontalPodAutoscalerUseRESTClients causes the HPA controller to use REST clients
|
||||||
// through the kube-aggregator when enabled, instead of using the legacy metrics client
|
// through the kube-aggregator when enabled, instead of using the legacy metrics client
|
||||||
// through the API server proxy.
|
// through the API server proxy.
|
||||||
HorizontalPodAutoscalerUseRESTClients *bool `json:"horizontalPodAutoscalerUseRESTClients"`
|
HorizontalPodAutoscalerUseRESTClients *bool
|
||||||
}
|
}
|
||||||
|
|
||||||
type JobControllerConfiguration struct {
|
type JobControllerConfiguration struct {
|
||||||
|
@ -468,100 +469,100 @@ type JobControllerConfiguration struct {
|
||||||
type NamespaceControllerConfiguration struct {
|
type NamespaceControllerConfiguration struct {
|
||||||
// namespaceSyncPeriod is the period for syncing namespace life-cycle
|
// namespaceSyncPeriod is the period for syncing namespace life-cycle
|
||||||
// updates.
|
// updates.
|
||||||
NamespaceSyncPeriod metav1.Duration `json:"namespaceSyncPeriod"`
|
NamespaceSyncPeriod metav1.Duration
|
||||||
// concurrentNamespaceSyncs is the number of namespace objects that are
|
// concurrentNamespaceSyncs is the number of namespace objects that are
|
||||||
// allowed to sync concurrently.
|
// allowed to sync concurrently.
|
||||||
ConcurrentNamespaceSyncs int32 `json:"concurrentNamespaceSyncs"`
|
ConcurrentNamespaceSyncs int32
|
||||||
}
|
}
|
||||||
|
|
||||||
type NodeIpamControllerConfiguration struct {
|
type NodeIpamControllerConfiguration struct {
|
||||||
// serviceCIDR is CIDR Range for Services in cluster.
|
// serviceCIDR is CIDR Range for Services in cluster.
|
||||||
ServiceCIDR string `json:"serviceCIDR"`
|
ServiceCIDR string
|
||||||
// NodeCIDRMaskSize is the mask size for node cidr in cluster.
|
// NodeCIDRMaskSize is the mask size for node cidr in cluster.
|
||||||
NodeCIDRMaskSize int32 `json:"nodeCIDRMaskSize"`
|
NodeCIDRMaskSize int32
|
||||||
}
|
}
|
||||||
|
|
||||||
type NodeLifecycleControllerConfiguration struct {
|
type NodeLifecycleControllerConfiguration struct {
|
||||||
// If set to true enables NoExecute Taints and will evict all not-tolerating
|
// If set to true enables NoExecute Taints and will evict all not-tolerating
|
||||||
// Pod running on Nodes tainted with this kind of Taints.
|
// Pod running on Nodes tainted with this kind of Taints.
|
||||||
EnableTaintManager *bool `json:"enableTaintManager"`
|
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 is the number of nodes per second on which pods are deleted in case of node failure when a zone is healthy
|
||||||
NodeEvictionRate float32 `json:"nodeEvictionRate"`
|
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 is the number of nodes per second on which pods are deleted in case of node failure when a zone is unhealthy
|
||||||
SecondaryNodeEvictionRate float32 `json:"secondaryNodeEvictionRate"`
|
SecondaryNodeEvictionRate float32
|
||||||
// nodeStartupGracePeriod is the amount of time which we allow starting a node to
|
// nodeStartupGracePeriod is the amount of time which we allow starting a node to
|
||||||
// be unresponsive before marking it unhealthy.
|
// be unresponsive before marking it unhealthy.
|
||||||
NodeStartupGracePeriod metav1.Duration `json:"nodeStartupGracePeriod"`
|
NodeStartupGracePeriod metav1.Duration
|
||||||
// nodeMontiorGracePeriod is the amount of time which we allow a running node to be
|
// 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
|
// unresponsive before marking it unhealthy. Must be N times more than kubelet's
|
||||||
// nodeStatusUpdateFrequency, where N means number of retries allowed for kubelet
|
// nodeStatusUpdateFrequency, where N means number of retries allowed for kubelet
|
||||||
// to post node status.
|
// to post node status.
|
||||||
NodeMonitorGracePeriod metav1.Duration `json:"nodeMonitorGracePeriod"`
|
NodeMonitorGracePeriod metav1.Duration
|
||||||
// podEvictionTimeout is the grace period for deleting pods on failed nodes.
|
// podEvictionTimeout is the grace period for deleting pods on failed nodes.
|
||||||
PodEvictionTimeout metav1.Duration `json:"podEvictionTimeout"`
|
PodEvictionTimeout metav1.Duration
|
||||||
// secondaryNodeEvictionRate is implicitly overridden to 0 for clusters smaller than or equal to largeClusterSizeThreshold
|
// secondaryNodeEvictionRate is implicitly overridden to 0 for clusters smaller than or equal to largeClusterSizeThreshold
|
||||||
LargeClusterSizeThreshold int32 `json:"largeClusterSizeThreshold"`
|
LargeClusterSizeThreshold int32
|
||||||
// Zone is treated as unhealthy in nodeEvictionRate and secondaryNodeEvictionRate when at least
|
// 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 (no less than 3) of Nodes in the zone are NotReady
|
||||||
UnhealthyZoneThreshold float32 `json:"unhealthyZoneThreshold"`
|
UnhealthyZoneThreshold float32
|
||||||
}
|
}
|
||||||
|
|
||||||
type PersistentVolumeBinderControllerConfiguration struct {
|
type PersistentVolumeBinderControllerConfiguration struct {
|
||||||
// pvClaimBinderSyncPeriod is the period for syncing persistent volumes
|
// pvClaimBinderSyncPeriod is the period for syncing persistent volumes
|
||||||
// and persistent volume claims.
|
// and persistent volume claims.
|
||||||
PVClaimBinderSyncPeriod metav1.Duration `json:"pVClaimBinderSyncPeriod"`
|
PVClaimBinderSyncPeriod metav1.Duration
|
||||||
// volumeConfiguration holds configuration for volume related features.
|
// volumeConfiguration holds configuration for volume related features.
|
||||||
VolumeConfiguration VolumeConfiguration `json:"volumeConfiguration"`
|
VolumeConfiguration VolumeConfiguration
|
||||||
}
|
}
|
||||||
|
|
||||||
type PodGCControllerConfiguration struct {
|
type PodGCControllerConfiguration struct {
|
||||||
// terminatedPodGCThreshold is the number of terminated pods that can exist
|
// terminatedPodGCThreshold is the number of terminated pods that can exist
|
||||||
// before the terminated pod garbage collector starts deleting terminated pods.
|
// before the terminated pod garbage collector starts deleting terminated pods.
|
||||||
// If <= 0, the terminated pod garbage collector is disabled.
|
// If <= 0, the terminated pod garbage collector is disabled.
|
||||||
TerminatedPodGCThreshold int32 `json:"terminatedPodGCThreshold"`
|
TerminatedPodGCThreshold int32
|
||||||
}
|
}
|
||||||
|
|
||||||
type ReplicaSetControllerConfiguration struct {
|
type ReplicaSetControllerConfiguration struct {
|
||||||
// concurrentRSSyncs is the number of replica sets that are allowed to sync
|
// concurrentRSSyncs is the number of replica sets that are allowed to sync
|
||||||
// concurrently. Larger number = more responsive replica management, but more
|
// concurrently. Larger number = more responsive replica management, but more
|
||||||
// CPU (and network) load.
|
// CPU (and network) load.
|
||||||
ConcurrentRSSyncs int32 `json:"concurrentRSSyncs"`
|
ConcurrentRSSyncs int32
|
||||||
}
|
}
|
||||||
|
|
||||||
type ReplicationControllerConfiguration struct {
|
type ReplicationControllerConfiguration struct {
|
||||||
// concurrentRCSyncs is the number of replication controllers that are
|
// concurrentRCSyncs is the number of replication controllers that are
|
||||||
// allowed to sync concurrently. Larger number = more responsive replica
|
// allowed to sync concurrently. Larger number = more responsive replica
|
||||||
// management, but more CPU (and network) load.
|
// management, but more CPU (and network) load.
|
||||||
ConcurrentRCSyncs int32 `json:"concurrentRCSyncs"`
|
ConcurrentRCSyncs int32
|
||||||
}
|
}
|
||||||
|
|
||||||
type ResourceQuotaControllerConfiguration struct {
|
type ResourceQuotaControllerConfiguration struct {
|
||||||
// resourceQuotaSyncPeriod is the period for syncing quota usage status
|
// resourceQuotaSyncPeriod is the period for syncing quota usage status
|
||||||
// in the system.
|
// in the system.
|
||||||
ResourceQuotaSyncPeriod metav1.Duration `json:"resourceQuotaSyncPeriod"`
|
ResourceQuotaSyncPeriod metav1.Duration
|
||||||
// concurrentResourceQuotaSyncs is the number of resource quotas that are
|
// concurrentResourceQuotaSyncs is the number of resource quotas that are
|
||||||
// allowed to sync concurrently. Larger number = more responsive quota
|
// allowed to sync concurrently. Larger number = more responsive quota
|
||||||
// management, but more CPU (and network) load.
|
// management, but more CPU (and network) load.
|
||||||
ConcurrentResourceQuotaSyncs int32 `json:"concurrentResourceQuotaSyncs"`
|
ConcurrentResourceQuotaSyncs int32
|
||||||
}
|
}
|
||||||
|
|
||||||
type SAControllerConfiguration struct {
|
type SAControllerConfiguration struct {
|
||||||
// serviceAccountKeyFile is the filename containing a PEM-encoded private RSA key
|
// serviceAccountKeyFile is the filename containing a PEM-encoded private RSA key
|
||||||
// used to sign service account tokens.
|
// used to sign service account tokens.
|
||||||
ServiceAccountKeyFile string `json:"serviceAccountKeyFile"`
|
ServiceAccountKeyFile string
|
||||||
// concurrentSATokenSyncs is the number of service account token syncing operations
|
// concurrentSATokenSyncs is the number of service account token syncing operations
|
||||||
// that will be done concurrently.
|
// that will be done concurrently.
|
||||||
ConcurrentSATokenSyncs int32 `json:"concurrentSATokenSyncs"`
|
ConcurrentSATokenSyncs int32
|
||||||
// rootCAFile is the root certificate authority will be included in service
|
// rootCAFile is the root certificate authority will be included in service
|
||||||
// account's token secret. This must be a valid PEM-encoded CA bundle.
|
// account's token secret. This must be a valid PEM-encoded CA bundle.
|
||||||
RootCAFile string `json:"rootCAFile"`
|
RootCAFile string
|
||||||
}
|
}
|
||||||
|
|
||||||
type ServiceControllerConfiguration struct {
|
type ServiceControllerConfiguration struct {
|
||||||
// concurrentServiceSyncs is the number of services that are
|
// concurrentServiceSyncs is the number of services that are
|
||||||
// allowed to sync concurrently. Larger number = more responsive service
|
// allowed to sync concurrently. Larger number = more responsive service
|
||||||
// management, but more CPU (and network) load.
|
// management, but more CPU (and network) load.
|
||||||
ConcurrentServiceSyncs int32 `json:"concurrentServiceSyncs"`
|
ConcurrentServiceSyncs int32
|
||||||
}
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
|
|
|
@ -70,6 +70,4 @@ func Install(scheme *runtime.Scheme) {
|
||||||
scheduling.Install(scheme)
|
scheduling.Install(scheme)
|
||||||
settings.Install(scheme)
|
settings.Install(scheme)
|
||||||
storage.Install(scheme)
|
storage.Install(scheme)
|
||||||
|
|
||||||
ExtraInstall(scheme)
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,27 +0,0 @@
|
||||||
/*
|
|
||||||
Copyright 2017 The Kubernetes Authors.
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package scheme
|
|
||||||
|
|
||||||
import (
|
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
|
||||||
componentconfig "k8s.io/kubernetes/pkg/apis/componentconfig/install"
|
|
||||||
)
|
|
||||||
|
|
||||||
func ExtraInstall(scheme *runtime.Scheme) {
|
|
||||||
// componentconfig is an apigroup, but we don't have an API endpoint because its objects are just embedded in ConfigMaps.
|
|
||||||
componentconfig.Install(scheme)
|
|
||||||
}
|
|
|
@ -26,7 +26,6 @@ import (
|
||||||
_ "k8s.io/kubernetes/pkg/apis/autoscaling/install"
|
_ "k8s.io/kubernetes/pkg/apis/autoscaling/install"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/batch/install"
|
_ "k8s.io/kubernetes/pkg/apis/batch/install"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/certificates/install"
|
_ "k8s.io/kubernetes/pkg/apis/certificates/install"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig/install"
|
|
||||||
_ "k8s.io/kubernetes/pkg/apis/coordination/install"
|
_ "k8s.io/kubernetes/pkg/apis/coordination/install"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/core/install"
|
_ "k8s.io/kubernetes/pkg/apis/core/install"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/events/install"
|
_ "k8s.io/kubernetes/pkg/apis/events/install"
|
||||||
|
|
|
@ -39,13 +39,12 @@ func TestGroupVersions(t *testing.T) {
|
||||||
"apps",
|
"apps",
|
||||||
"autoscaling",
|
"autoscaling",
|
||||||
"batch",
|
"batch",
|
||||||
"componentconfig",
|
|
||||||
"extensions",
|
"extensions",
|
||||||
"policy",
|
"policy",
|
||||||
)
|
)
|
||||||
|
|
||||||
// No new groups should be added to the legacyUnsuffixedGroups exclusion list
|
// No new groups should be added to the legacyUnsuffixedGroups exclusion list
|
||||||
if len(legacyUnsuffixedGroups) != 7 {
|
if len(legacyUnsuffixedGroups) != 6 {
|
||||||
t.Errorf("No additional unnamespaced groups should be created")
|
t.Errorf("No additional unnamespaced groups should be created")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue