mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-09-09 21:21:14 +00:00
KubeletConfiguration should be a member of MasterConfiguration
This commit is contained in:
@@ -24,6 +24,8 @@ import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
runtimeserializer "k8s.io/apimachinery/pkg/runtime/serializer"
|
||||
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
|
||||
kubeletconfigv1alpha1 "k8s.io/kubernetes/pkg/kubelet/apis/kubeletconfig/v1alpha1"
|
||||
utilpointer "k8s.io/kubernetes/pkg/util/pointer"
|
||||
)
|
||||
|
||||
// Funcs returns the fuzzer functions for the kubeadm apis.
|
||||
@@ -39,20 +41,41 @@ func Funcs(codecs runtimeserializer.CodecFactory) []interface{} {
|
||||
obj.Networking.DNSDomain = "foo"
|
||||
obj.AuthorizationModes = []string{"foo"}
|
||||
obj.CertificatesDir = "foo"
|
||||
obj.APIServerCertSANs = []string{}
|
||||
obj.APIServerCertSANs = []string{"foo"}
|
||||
obj.Token = "foo"
|
||||
obj.Etcd.Image = "foo"
|
||||
obj.Etcd.DataDir = "foo"
|
||||
obj.ImageRepository = "foo"
|
||||
obj.CIImageRepository = ""
|
||||
obj.UnifiedControlPlaneImage = "foo"
|
||||
obj.FeatureGates = map[string]bool{}
|
||||
obj.FeatureGates = map[string]bool{"foo": true}
|
||||
obj.APIServerExtraArgs = map[string]string{"foo": "foo"}
|
||||
obj.APIServerExtraVolumes = []kubeadm.HostPathMount{{
|
||||
Name: "foo",
|
||||
HostPath: "foo",
|
||||
MountPath: "foo",
|
||||
}}
|
||||
obj.Etcd.ExtraArgs = map[string]string{"foo": "foo"}
|
||||
obj.Etcd.SelfHosted = &kubeadm.SelfHostedEtcd{
|
||||
CertificatesDir: "/etc/kubernetes/pki/etcd",
|
||||
ClusterServiceName: "etcd-cluster",
|
||||
EtcdVersion: "v0.1.0",
|
||||
OperatorVersion: "v0.1.0",
|
||||
}
|
||||
obj.KubeletConfiguration = kubeadm.KubeletConfiguration{
|
||||
BaseConfig: &kubeletconfigv1alpha1.KubeletConfiguration{
|
||||
PodManifestPath: "foo",
|
||||
AllowPrivileged: utilpointer.BoolPtr(true),
|
||||
ClusterDNS: []string{"foo"},
|
||||
ClusterDomain: "foo",
|
||||
Authorization: kubeletconfigv1alpha1.KubeletAuthorization{Mode: "foo"},
|
||||
Authentication: kubeletconfigv1alpha1.KubeletAuthentication{
|
||||
X509: kubeletconfigv1alpha1.KubeletX509Authentication{ClientCAFile: "foo"},
|
||||
},
|
||||
CAdvisorPort: utilpointer.Int32Ptr(0),
|
||||
},
|
||||
}
|
||||
kubeletconfigv1alpha1.SetDefaults_KubeletConfiguration(obj.KubeletConfiguration.BaseConfig)
|
||||
},
|
||||
func(obj *kubeadm.NodeConfiguration, c fuzz.Continue) {
|
||||
c.FuzzNoCustom(obj)
|
||||
|
@@ -30,6 +30,7 @@ type MasterConfiguration struct {
|
||||
|
||||
API API
|
||||
Etcd Etcd
|
||||
KubeletConfiguration KubeletConfiguration
|
||||
Networking Networking
|
||||
KubernetesVersion string
|
||||
CloudProvider string
|
||||
|
@@ -104,6 +104,7 @@ func SetDefaults_MasterConfiguration(obj *MasterConfiguration) {
|
||||
}
|
||||
|
||||
SetDefaultsEtcdSelfHosted(obj)
|
||||
SetDefaults_KubeletConfiguration(obj)
|
||||
}
|
||||
|
||||
// SetDefaults_NodeConfiguration assigns default values to a regular node
|
||||
@@ -150,26 +151,29 @@ func SetDefaultsEtcdSelfHosted(obj *MasterConfiguration) {
|
||||
}
|
||||
|
||||
// SetDefaults_KubeletConfiguration assigns default values to kubelet
|
||||
func SetDefaults_KubeletConfiguration(obj *KubeletConfiguration) {
|
||||
if obj.BaseConfig.PodManifestPath == "" {
|
||||
obj.BaseConfig.PodManifestPath = DefaultManifestsDir
|
||||
func SetDefaults_KubeletConfiguration(obj *MasterConfiguration) {
|
||||
if obj.KubeletConfiguration.BaseConfig == nil {
|
||||
obj.KubeletConfiguration.BaseConfig = &kubeletconfigv1alpha1.KubeletConfiguration{}
|
||||
}
|
||||
if obj.BaseConfig.AllowPrivileged == nil {
|
||||
obj.BaseConfig.AllowPrivileged = utilpointer.BoolPtr(true)
|
||||
if obj.KubeletConfiguration.BaseConfig.PodManifestPath == "" {
|
||||
obj.KubeletConfiguration.BaseConfig.PodManifestPath = DefaultManifestsDir
|
||||
}
|
||||
if obj.BaseConfig.ClusterDNS == nil {
|
||||
obj.BaseConfig.ClusterDNS = []string{DefaultClusterDNSIP}
|
||||
if obj.KubeletConfiguration.BaseConfig.AllowPrivileged == nil {
|
||||
obj.KubeletConfiguration.BaseConfig.AllowPrivileged = utilpointer.BoolPtr(true)
|
||||
}
|
||||
if obj.BaseConfig.ClusterDomain == "" {
|
||||
obj.BaseConfig.ClusterDomain = DefaultServiceDNSDomain
|
||||
if obj.KubeletConfiguration.BaseConfig.ClusterDNS == nil {
|
||||
obj.KubeletConfiguration.BaseConfig.ClusterDNS = []string{DefaultClusterDNSIP}
|
||||
}
|
||||
if obj.BaseConfig.Authorization.Mode == "" {
|
||||
obj.BaseConfig.Authorization.Mode = kubeletconfigv1alpha1.KubeletAuthorizationModeWebhook
|
||||
if obj.KubeletConfiguration.BaseConfig.ClusterDomain == "" {
|
||||
obj.KubeletConfiguration.BaseConfig.ClusterDomain = DefaultServiceDNSDomain
|
||||
}
|
||||
if obj.BaseConfig.Authentication.X509.ClientCAFile == "" {
|
||||
obj.BaseConfig.Authentication.X509.ClientCAFile = DefaultCACertPath
|
||||
if obj.KubeletConfiguration.BaseConfig.Authorization.Mode == "" {
|
||||
obj.KubeletConfiguration.BaseConfig.Authorization.Mode = kubeletconfigv1alpha1.KubeletAuthorizationModeWebhook
|
||||
}
|
||||
if obj.BaseConfig.CAdvisorPort == nil {
|
||||
obj.BaseConfig.CAdvisorPort = utilpointer.Int32Ptr(0)
|
||||
if obj.KubeletConfiguration.BaseConfig.Authentication.X509.ClientCAFile == "" {
|
||||
obj.KubeletConfiguration.BaseConfig.Authentication.X509.ClientCAFile = DefaultCACertPath
|
||||
}
|
||||
if obj.KubeletConfiguration.BaseConfig.CAdvisorPort == nil {
|
||||
obj.KubeletConfiguration.BaseConfig.CAdvisorPort = utilpointer.Int32Ptr(0)
|
||||
}
|
||||
}
|
||||
|
@@ -30,6 +30,7 @@ type MasterConfiguration struct {
|
||||
|
||||
API API `json:"api"`
|
||||
Etcd Etcd `json:"etcd"`
|
||||
KubeletConfiguration KubeletConfiguration `json:"kubeletConfiguration"`
|
||||
Networking Networking `json:"networking"`
|
||||
KubernetesVersion string `json:"kubernetesVersion"`
|
||||
CloudProvider string `json:"cloudProvider"`
|
||||
|
@@ -355,8 +355,7 @@ func (i *Init) Run(out io.Writer) error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
kubeletConfig := &kubeadmapiext.KubeletConfiguration{}
|
||||
kubeletBytes, err := kubeadmutil.MarshalToYamlForCodecs(kubeletConfig.BaseConfig, kubeletconfigv1alpha1.SchemeGroupVersion, *kubeletCodecs)
|
||||
kubeletBytes, err := kubeadmutil.MarshalToYamlForCodecs(i.cfg.KubeletConfiguration.BaseConfig, kubeletconfigv1alpha1.SchemeGroupVersion, *kubeletCodecs)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@@ -51,6 +51,8 @@ func TestPrintConfiguration(t *testing.T) {
|
||||
image: ""
|
||||
keyFile: ""
|
||||
imageRepository: ""
|
||||
kubeletConfiguration:
|
||||
baseConfig: null
|
||||
kubernetesVersion: v1.7.1
|
||||
networking:
|
||||
dnsDomain: ""
|
||||
@@ -82,6 +84,8 @@ func TestPrintConfiguration(t *testing.T) {
|
||||
image: ""
|
||||
keyFile: ""
|
||||
imageRepository: ""
|
||||
kubeletConfiguration:
|
||||
baseConfig: null
|
||||
kubernetesVersion: v1.7.1
|
||||
networking:
|
||||
dnsDomain: ""
|
||||
@@ -123,6 +127,8 @@ func TestPrintConfiguration(t *testing.T) {
|
||||
etcdVersion: v0.1.0
|
||||
operatorVersion: v0.1.0
|
||||
imageRepository: ""
|
||||
kubeletConfiguration:
|
||||
baseConfig: null
|
||||
kubernetesVersion: v1.7.1
|
||||
networking:
|
||||
dnsDomain: ""
|
||||
|
Reference in New Issue
Block a user