Update unit tests to use the new NodeRegistration object

This commit is contained in:
Lucas Käldström 2018-05-29 17:52:10 +03:00
parent b48f23b786
commit fd47f8b20c
No known key found for this signature in database
GPG Key ID: 3FA3783D77751514
14 changed files with 100 additions and 101 deletions

View File

@ -119,7 +119,7 @@ func TestValidateNodeName(t *testing.T) {
actual := ValidateNodeName(rt.s, rt.f) actual := ValidateNodeName(rt.s, rt.f)
if (len(actual) == 0) != rt.expected { if (len(actual) == 0) != rt.expected {
t.Errorf( t.Errorf(
"failed ValidateNodeName:\n\texpected: %t\n\t actual: %t", "failed ValidateNodeRegistration: kubeadm.NodeRegistrationOptions{Name:\n\texpected: %t\n\t actual: %t",
rt.expected, rt.expected,
(len(actual) == 0), (len(actual) == 0),
) )
@ -408,7 +408,7 @@ func TestValidateMasterConfiguration(t *testing.T) {
DNSDomain: "cluster.local", DNSDomain: "cluster.local",
}, },
CertificatesDir: "/some/cert/dir", CertificatesDir: "/some/cert/dir",
NodeName: nodename, NodeRegistration: kubeadm.NodeRegistrationOptions{Name: nodename, CRISocket: "/some/path"},
}, false}, }, false},
{"invalid missing token with IPv6 service subnet", {"invalid missing token with IPv6 service subnet",
&kubeadm.MasterConfiguration{ &kubeadm.MasterConfiguration{
@ -421,7 +421,7 @@ func TestValidateMasterConfiguration(t *testing.T) {
DNSDomain: "cluster.local", DNSDomain: "cluster.local",
}, },
CertificatesDir: "/some/cert/dir", CertificatesDir: "/some/cert/dir",
NodeName: nodename, NodeRegistration: kubeadm.NodeRegistrationOptions{Name: nodename, CRISocket: "/some/path"},
}, false}, }, false},
{"invalid missing node name", {"invalid missing node name",
&kubeadm.MasterConfiguration{ &kubeadm.MasterConfiguration{
@ -449,7 +449,7 @@ func TestValidateMasterConfiguration(t *testing.T) {
}, },
CertificatesDir: "/some/other/cert/dir", CertificatesDir: "/some/other/cert/dir",
Token: "abcdef.0123456789abcdef", Token: "abcdef.0123456789abcdef",
NodeName: nodename, NodeRegistration: kubeadm.NodeRegistrationOptions{Name: nodename, CRISocket: "/some/path"},
}, false}, }, false},
{"valid master configuration with IPv4 service subnet", {"valid master configuration with IPv4 service subnet",
&kubeadm.MasterConfiguration{ &kubeadm.MasterConfiguration{
@ -495,7 +495,7 @@ func TestValidateMasterConfiguration(t *testing.T) {
}, },
CertificatesDir: "/some/other/cert/dir", CertificatesDir: "/some/other/cert/dir",
Token: "abcdef.0123456789abcdef", Token: "abcdef.0123456789abcdef",
NodeName: nodename, NodeRegistration: kubeadm.NodeRegistrationOptions{Name: nodename, CRISocket: "/some/path"},
}, true}, }, true},
{"valid master configuration using IPv6 service subnet", {"valid master configuration using IPv6 service subnet",
&kubeadm.MasterConfiguration{ &kubeadm.MasterConfiguration{
@ -540,7 +540,7 @@ func TestValidateMasterConfiguration(t *testing.T) {
}, },
CertificatesDir: "/some/other/cert/dir", CertificatesDir: "/some/other/cert/dir",
Token: "abcdef.0123456789abcdef", Token: "abcdef.0123456789abcdef",
NodeName: nodename, NodeRegistration: kubeadm.NodeRegistrationOptions{Name: nodename, CRISocket: "/some/path"},
}, true}, }, true},
} }
for _, rt := range tests { for _, rt := range tests {

View File

@ -256,7 +256,7 @@ func TestSubCmdCertsCreateFilesWithConfigFile(t *testing.T) {
cfg := &kubeadmapi.MasterConfiguration{ cfg := &kubeadmapi.MasterConfiguration{
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", BindPort: 1234}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", BindPort: 1234},
CertificatesDir: certdir, CertificatesDir: certdir,
NodeName: "valid-node-name", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-node-name"},
} }
configPath := testutil.SetupMasterConfigurationFile(t, tmpdir, cfg) configPath := testutil.SetupMasterConfigurationFile(t, tmpdir, cfg)

View File

@ -279,7 +279,7 @@ func TestKubeConfigSubCommandsThatCreateFilesWithConfigFile(t *testing.T) {
cfg := &kubeadmapi.MasterConfiguration{ cfg := &kubeadmapi.MasterConfiguration{
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", BindPort: 1234}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", BindPort: 1234},
CertificatesDir: pkidir, CertificatesDir: pkidir,
NodeName: "valid-node-name", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-node-name"},
} }
cfgPath := testutil.SetupMasterConfigurationFile(t, tmpdir, cfg) cfgPath := testutil.SetupMasterConfigurationFile(t, tmpdir, cfg)

View File

@ -65,7 +65,9 @@ func TestPrintConfiguration(t *testing.T) {
dnsDomain: "" dnsDomain: ""
podSubnet: "" podSubnet: ""
serviceSubnet: "" serviceSubnet: ""
nodeName: "" nodeRegistration:
criSocket: ""
name: ""
token: "" token: ""
unifiedControlPlaneImage: "" unifiedControlPlaneImage: ""
`), `),
@ -108,7 +110,9 @@ func TestPrintConfiguration(t *testing.T) {
dnsDomain: "" dnsDomain: ""
podSubnet: "" podSubnet: ""
serviceSubnet: 10.96.0.1/12 serviceSubnet: 10.96.0.1/12
nodeName: "" nodeRegistration:
criSocket: ""
name: ""
token: "" token: ""
unifiedControlPlaneImage: "" unifiedControlPlaneImage: ""
`), `),

View File

@ -275,7 +275,7 @@ func TestNewAPIServerCertAndKey(t *testing.T) {
cfg := &kubeadmapi.MasterConfiguration{ cfg := &kubeadmapi.MasterConfiguration{
API: kubeadmapi.API{AdvertiseAddress: addr}, API: kubeadmapi.API{AdvertiseAddress: addr},
Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"}, Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"},
NodeName: hostname, NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: hostname},
} }
caCert, caKey, err := NewCACertAndKey() caCert, caKey, err := NewCACertAndKey()
if err != nil { if err != nil {
@ -358,7 +358,7 @@ func TestNewEtcdPeerCertAndKey(t *testing.T) {
for _, addr := range advertiseAddresses { for _, addr := range advertiseAddresses {
cfg := &kubeadmapi.MasterConfiguration{ cfg := &kubeadmapi.MasterConfiguration{
API: kubeadmapi.API{AdvertiseAddress: addr}, API: kubeadmapi.API{AdvertiseAddress: addr},
NodeName: hostname, NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: hostname},
Etcd: kubeadmapi.Etcd{ Etcd: kubeadmapi.Etcd{
Local: &kubeadmapi.LocalEtcd{ Local: &kubeadmapi.LocalEtcd{
PeerCertSANs: []string{ PeerCertSANs: []string{
@ -483,7 +483,7 @@ func TestUsingExternalCA(t *testing.T) {
cfg := &kubeadmapi.MasterConfiguration{ cfg := &kubeadmapi.MasterConfiguration{
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"},
Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"}, Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"},
NodeName: "valid-hostname", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-hostname"},
CertificatesDir: dir, CertificatesDir: dir,
} }
@ -566,7 +566,7 @@ func TestValidateMethods(t *testing.T) {
cfg := &kubeadmapi.MasterConfiguration{ cfg := &kubeadmapi.MasterConfiguration{
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"},
Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"}, Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"},
NodeName: "valid-hostname", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-hostname"},
CertificatesDir: dir, CertificatesDir: dir,
} }
@ -699,7 +699,7 @@ func TestCreateCertificateFilesMethods(t *testing.T) {
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"},
Etcd: kubeadmapi.Etcd{Local: &kubeadmapi.LocalEtcd{}}, Etcd: kubeadmapi.Etcd{Local: &kubeadmapi.LocalEtcd{}},
Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"}, Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"},
NodeName: "valid-hostname", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-hostname"},
CertificatesDir: tmpdir, CertificatesDir: tmpdir,
} }

View File

@ -448,7 +448,7 @@ func TestGetAPIServerAltNames(t *testing.T) {
cfg: &kubeadmapi.MasterConfiguration{ cfg: &kubeadmapi.MasterConfiguration{
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "api.k8s.io:6443"}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "api.k8s.io:6443"},
Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"}, Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"},
NodeName: "valid-hostname", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-hostname"},
APIServerCertSANs: []string{"10.1.245.94", "10.1.245.95", "1.2.3.L", "invalid,commas,in,DNS"}, APIServerCertSANs: []string{"10.1.245.94", "10.1.245.95", "1.2.3.L", "invalid,commas,in,DNS"},
}, },
expectedDNSNames: []string{"valid-hostname", "kubernetes", "kubernetes.default", "kubernetes.default.svc", "kubernetes.default.svc.cluster.local", "api.k8s.io"}, expectedDNSNames: []string{"valid-hostname", "kubernetes", "kubernetes.default", "kubernetes.default.svc", "kubernetes.default.svc.cluster.local", "api.k8s.io"},
@ -459,7 +459,7 @@ func TestGetAPIServerAltNames(t *testing.T) {
cfg: &kubeadmapi.MasterConfiguration{ cfg: &kubeadmapi.MasterConfiguration{
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "4.5.6.7:6443"}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "4.5.6.7:6443"},
Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"}, Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"},
NodeName: "valid-hostname", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-hostname"},
APIServerCertSANs: []string{"10.1.245.94", "10.1.245.95", "1.2.3.L", "invalid,commas,in,DNS"}, APIServerCertSANs: []string{"10.1.245.94", "10.1.245.95", "1.2.3.L", "invalid,commas,in,DNS"},
}, },
expectedDNSNames: []string{"valid-hostname", "kubernetes", "kubernetes.default", "kubernetes.default.svc", "kubernetes.default.svc.cluster.local"}, expectedDNSNames: []string{"valid-hostname", "kubernetes", "kubernetes.default", "kubernetes.default.svc", "kubernetes.default.svc.cluster.local"},
@ -562,7 +562,7 @@ func TestGetEtcdPeerAltNames(t *testing.T) {
advertiseIP := "1.2.3.4" advertiseIP := "1.2.3.4"
cfg := &kubeadmapi.MasterConfiguration{ cfg := &kubeadmapi.MasterConfiguration{
API: kubeadmapi.API{AdvertiseAddress: advertiseIP}, API: kubeadmapi.API{AdvertiseAddress: advertiseIP},
NodeName: hostname, NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: hostname},
Etcd: kubeadmapi.Etcd{ Etcd: kubeadmapi.Etcd{
Local: &kubeadmapi.LocalEtcd{ Local: &kubeadmapi.LocalEtcd{
PeerCertSANs: []string{ PeerCertSANs: []string{

View File

@ -838,7 +838,7 @@ func TestGetControllerManagerCommandExternalCA(t *testing.T) {
KubernetesVersion: "v1.7.0", KubernetesVersion: "v1.7.0",
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"},
Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"}, Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"},
NodeName: "valid-hostname", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-hostname"},
}, },
caKeyPresent: false, caKeyPresent: false,
expectedArgFunc: func(tmpdir string) []string { expectedArgFunc: func(tmpdir string) []string {
@ -862,7 +862,7 @@ func TestGetControllerManagerCommandExternalCA(t *testing.T) {
KubernetesVersion: "v1.7.0", KubernetesVersion: "v1.7.0",
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"},
Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"}, Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"},
NodeName: "valid-hostname", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-hostname"},
}, },
caKeyPresent: true, caKeyPresent: true,
expectedArgFunc: func(tmpdir string) []string { expectedArgFunc: func(tmpdir string) []string {

View File

@ -69,27 +69,27 @@ func TestGetKubeConfigSpecs(t *testing.T) {
{ {
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", BindPort: 1234}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", BindPort: 1234},
CertificatesDir: pkidir, CertificatesDir: pkidir,
NodeName: "valid-node-name", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-node-name"},
}, },
{ {
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "api.k8s.io", BindPort: 1234}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "api.k8s.io", BindPort: 1234},
CertificatesDir: pkidir, CertificatesDir: pkidir,
NodeName: "valid-node-name", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-node-name"},
}, },
{ {
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "api.k8s.io:4321", BindPort: 1234}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "api.k8s.io:4321", BindPort: 1234},
CertificatesDir: pkidir, CertificatesDir: pkidir,
NodeName: "valid-node-name", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-node-name"},
}, },
{ {
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "api.k8s.io", BindPort: 1234}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "api.k8s.io", BindPort: 1234},
CertificatesDir: pkidir, CertificatesDir: pkidir,
NodeName: "valid-node-name", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-node-name"},
}, },
{ {
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "api.k8s.io:4321", BindPort: 1234}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4", ControlPlaneEndpoint: "api.k8s.io:4321", BindPort: 1234},
CertificatesDir: pkidir, CertificatesDir: pkidir,
NodeName: "valid-node-name", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "valid-node-name"},
}, },
} }
@ -106,7 +106,7 @@ func TestGetKubeConfigSpecs(t *testing.T) {
}, },
{ {
kubeConfigFile: kubeadmconstants.KubeletKubeConfigFileName, kubeConfigFile: kubeadmconstants.KubeletKubeConfigFileName,
clientName: fmt.Sprintf("system:node:%s", cfg.NodeName), clientName: fmt.Sprintf("system:node:%s", cfg.NodeRegistration.Name),
organizations: []string{kubeadmconstants.NodesGroup}, organizations: []string{kubeadmconstants.NodesGroup},
}, },
{ {

View File

@ -33,7 +33,7 @@ func TestCreateConfigMap(t *testing.T) {
nodeName := "fake-node" nodeName := "fake-node"
client := fake.NewSimpleClientset() client := fake.NewSimpleClientset()
cfg := &kubeadmapi.MasterConfiguration{ cfg := &kubeadmapi.MasterConfiguration{
NodeName: nodeName, NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: nodeName},
KubernetesVersion: "v1.11.0", KubernetesVersion: "v1.11.0",
KubeletConfiguration: kubeadmapi.KubeletConfiguration{ KubeletConfiguration: kubeadmapi.KubeletConfiguration{
BaseConfig: &kubeletconfigv1beta1.KubeletConfiguration{}, BaseConfig: &kubeletconfigv1beta1.KubeletConfiguration{},

View File

@ -24,6 +24,7 @@ import (
"k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime"
"k8s.io/client-go/kubernetes/fake" "k8s.io/client-go/kubernetes/fake"
core "k8s.io/client-go/testing" core "k8s.io/client-go/testing"
kubeletapis "k8s.io/kubernetes/pkg/kubelet/apis"
"k8s.io/kubernetes/pkg/util/version" "k8s.io/kubernetes/pkg/util/version"
) )
@ -34,6 +35,7 @@ func TestEnableDynamicConfigForNode(t *testing.T) {
return true, &v1.Node{ return true, &v1.Node{
ObjectMeta: metav1.ObjectMeta{ ObjectMeta: metav1.ObjectMeta{
Name: nodeName, Name: nodeName,
Labels: map[string]string{kubeletapis.LabelHostname: nodeName},
}, },
Spec: v1.NodeSpec{ Spec: v1.NodeSpec{
ConfigSource: &v1.NodeConfigSource{ ConfigSource: &v1.NodeConfigSource{

View File

@ -42,50 +42,50 @@ func TestMarkMaster(t *testing.T) {
tests := []struct { tests := []struct {
name string name string
existingLabel string existingLabel string
existingTaint *v1.Taint existingTaints []v1.Taint
wantTaint bool newTaints []v1.Taint
expectedPatch string expectedPatch string
}{ }{
{ {
"master label and taint missing", "master label and taint missing",
"", "",
nil, nil,
true, []v1.Taint{kubeadmconstants.MasterTaint},
"{\"metadata\":{\"labels\":{\"node-role.kubernetes.io/master\":\"\"}},\"spec\":{\"taints\":[{\"effect\":\"NoSchedule\",\"key\":\"node-role.kubernetes.io/master\"}]}}", "{\"metadata\":{\"labels\":{\"node-role.kubernetes.io/master\":\"\"}},\"spec\":{\"taints\":[{\"effect\":\"NoSchedule\",\"key\":\"node-role.kubernetes.io/master\"}]}}",
}, },
{ {
"master label and taint missing but taint not wanted", "master label and taint missing but taint not wanted",
"", "",
nil, nil,
false, nil,
"{\"metadata\":{\"labels\":{\"node-role.kubernetes.io/master\":\"\"}}}", "{\"metadata\":{\"labels\":{\"node-role.kubernetes.io/master\":\"\"}}}",
}, },
{ {
"master label missing", "master label missing",
"", "",
&kubeadmconstants.MasterTaint, []v1.Taint{kubeadmconstants.MasterTaint},
true, []v1.Taint{kubeadmconstants.MasterTaint},
"{\"metadata\":{\"labels\":{\"node-role.kubernetes.io/master\":\"\"}}}", "{\"metadata\":{\"labels\":{\"node-role.kubernetes.io/master\":\"\"}}}",
}, },
{ {
"master taint missing", "master taint missing",
kubeadmconstants.LabelNodeRoleMaster, kubeadmconstants.LabelNodeRoleMaster,
nil, nil,
true, []v1.Taint{kubeadmconstants.MasterTaint},
"{\"spec\":{\"taints\":[{\"effect\":\"NoSchedule\",\"key\":\"node-role.kubernetes.io/master\"}]}}", "{\"spec\":{\"taints\":[{\"effect\":\"NoSchedule\",\"key\":\"node-role.kubernetes.io/master\"}]}}",
}, },
{ {
"nothing missing", "nothing missing",
kubeadmconstants.LabelNodeRoleMaster, kubeadmconstants.LabelNodeRoleMaster,
&kubeadmconstants.MasterTaint, []v1.Taint{kubeadmconstants.MasterTaint},
true, []v1.Taint{kubeadmconstants.MasterTaint},
"{}", "{}",
}, },
{ {
"nothing missing but taint unwanted", "nothing missing but taint unwanted",
kubeadmconstants.LabelNodeRoleMaster, kubeadmconstants.LabelNodeRoleMaster,
&kubeadmconstants.MasterTaint, []v1.Taint{kubeadmconstants.MasterTaint},
false, nil,
"{\"spec\":{\"taints\":null}}", "{\"spec\":{\"taints\":null}}",
}, },
} }
@ -105,8 +105,8 @@ func TestMarkMaster(t *testing.T) {
masterNode.ObjectMeta.Labels[tc.existingLabel] = "" masterNode.ObjectMeta.Labels[tc.existingLabel] = ""
} }
if tc.existingTaint != nil { if tc.existingTaints != nil {
masterNode.Spec.Taints = append(masterNode.Spec.Taints, *tc.existingTaint) masterNode.Spec.Taints = tc.existingTaints
} }
jsonNode, err := json.Marshal(masterNode) jsonNode, err := json.Marshal(masterNode)
@ -144,8 +144,7 @@ func TestMarkMaster(t *testing.T) {
t.Fatalf("MarkMaster(%s): unexpected error building clientset: %v", tc.name, err) t.Fatalf("MarkMaster(%s): unexpected error building clientset: %v", tc.name, err)
} }
err = MarkMaster(cs, hostname, tc.wantTaint) if err := MarkMaster(cs, hostname, tc.newTaints); err != nil {
if err != nil {
t.Errorf("MarkMaster(%s) returned unexpected error: %v", tc.name, err) t.Errorf("MarkMaster(%s) returned unexpected error: %v", tc.name, err)
} }

View File

@ -133,7 +133,7 @@ func TestShouldBackupAPIServerCertAndKey(t *testing.T) {
cfg := &kubeadmapi.MasterConfiguration{ cfg := &kubeadmapi.MasterConfiguration{
API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"}, API: kubeadmapi.API{AdvertiseAddress: "1.2.3.4"},
Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"}, Networking: kubeadmapi.Networking{ServiceSubnet: "10.96.0.0/12", DNSDomain: "cluster.local"},
NodeName: "test-node", NodeRegistration: kubeadmapi.NodeRegistrationOptions{Name: "test-node"},
} }
for desc, test := range map[string]struct { for desc, test := range map[string]struct {

View File

@ -66,7 +66,9 @@ networking:
dnsDomain: cluster.local dnsDomain: cluster.local
podSubnet: "" podSubnet: ""
serviceSubnet: 10.96.0.0/12 serviceSubnet: 10.96.0.0/12
nodeName: thegopher nodeRegistration:
name: foo
criSocket: ""
schedulerExtraArgs: null schedulerExtraArgs: null
token: ce3aa5.5ec8455bb76b379f token: ce3aa5.5ec8455bb76b379f
tokenTTL: 24h tokenTTL: 24h

View File

@ -24,7 +24,6 @@ import (
"k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm" "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/scheme" "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/scheme"
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1alpha1"
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1alpha2" "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1alpha2"
kubeadmutil "k8s.io/kubernetes/cmd/kubeadm/app/util" kubeadmutil "k8s.io/kubernetes/cmd/kubeadm/app/util"
) )
@ -34,8 +33,7 @@ const (
node_v1alpha2YAML = "testdata/conversion/node/v1alpha2.yaml" node_v1alpha2YAML = "testdata/conversion/node/v1alpha2.yaml"
node_internalYAML = "testdata/conversion/node/internal.yaml" node_internalYAML = "testdata/conversion/node/internal.yaml"
node_incompleteYAML = "testdata/defaulting/node/incomplete.yaml" node_incompleteYAML = "testdata/defaulting/node/incomplete.yaml"
node_defaultedv1alpha1YAML = "testdata/defaulting/node/defaulted_v1alpha1.yaml" node_defaultedYAML = "testdata/defaulting/node/defaulted.yaml"
node_defaultedv1alpha2YAML = "testdata/defaulting/node/defaulted_v1alpha2.yaml"
node_invalidYAML = "testdata/validation/invalid_nodecfg.yaml" node_invalidYAML = "testdata/validation/invalid_nodecfg.yaml"
) )
@ -67,16 +65,10 @@ func TestNodeConfigFileAndDefaultsToInternalConfig(t *testing.T) {
}, },
// These tests are reading one file that has only a subset of the fields populated, loading it using NodeConfigFileAndDefaultsToInternalConfig, // These tests are reading one file that has only a subset of the fields populated, loading it using NodeConfigFileAndDefaultsToInternalConfig,
// and then marshals the internal object to the expected groupVersion // and then marshals the internal object to the expected groupVersion
{ // v1alpha1 -> default -> validate -> internal -> v1alpha1
name: "incompleteYAMLToDefaulted",
in: node_incompleteYAML,
out: node_defaultedv1alpha1YAML,
groupVersion: v1alpha1.SchemeGroupVersion,
},
{ // v1alpha1 -> default -> validate -> internal -> v1alpha2 { // v1alpha1 -> default -> validate -> internal -> v1alpha2
name: "incompleteYAMLToDefaulted", name: "incompleteYAMLToDefaulted",
in: node_incompleteYAML, in: node_incompleteYAML,
out: node_defaultedv1alpha2YAML, out: node_defaultedYAML,
groupVersion: v1alpha2.SchemeGroupVersion, groupVersion: v1alpha2.SchemeGroupVersion,
}, },
{ // v1alpha1 (faulty) -> validation should fail { // v1alpha1 (faulty) -> validation should fail