mirror of https://github.com/k3s-io/k3s
Merge pull request #74557 from vanduc95/cleanup-kubeadm-cont.5-20190225
kubeadm cleanup: master -> control-plane (cont.5)pull/564/head
commit
465f7ebf43
|
@ -30,7 +30,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
var joinCommandTemplate = template.Must(template.New("join").Parse(`` +
|
var joinCommandTemplate = template.Must(template.New("join").Parse(`` +
|
||||||
`kubeadm join {{.MasterHostPort}} --token {{.Token}}{{range $h := .CAPubKeyPins}} --discovery-token-ca-cert-hash {{$h}}{{end}}{{if .UploadCerts}} --certificate-key {{.CertificateKey}}{{end}}`,
|
`kubeadm join {{.ControlPlaneHostPort}} --token {{.Token}}{{range $h := .CAPubKeyPins}} --discovery-token-ca-cert-hash {{$h}}{{end}}{{if .UploadCerts}} --certificate-key {{.CertificateKey}}{{end}}`,
|
||||||
))
|
))
|
||||||
|
|
||||||
// GetJoinCommand returns the kubeadm join command for a given token and
|
// GetJoinCommand returns the kubeadm join command for a given token and
|
||||||
|
@ -71,11 +71,11 @@ func GetJoinCommand(kubeConfigFile, token, key string, skipTokenPrint, uploadCer
|
||||||
}
|
}
|
||||||
|
|
||||||
ctx := map[string]interface{}{
|
ctx := map[string]interface{}{
|
||||||
"Token": token,
|
"Token": token,
|
||||||
"CAPubKeyPins": publicKeyPins,
|
"CAPubKeyPins": publicKeyPins,
|
||||||
"MasterHostPort": strings.Replace(clusterConfig.Server, "https://", "", -1),
|
"ControlPlaneHostPort": strings.Replace(clusterConfig.Server, "https://", "", -1),
|
||||||
"UploadCerts": uploadCerts,
|
"UploadCerts": uploadCerts,
|
||||||
"CertificateKey": key,
|
"CertificateKey": key,
|
||||||
}
|
}
|
||||||
|
|
||||||
if skipTokenPrint {
|
if skipTokenPrint {
|
||||||
|
|
|
@ -172,16 +172,16 @@ func RetrieveValidatedConfigInfo(cfg *kubeadmapi.JoinConfiguration) (*clientcmda
|
||||||
|
|
||||||
// buildInsecureBootstrapKubeConfig makes a kubeconfig object that connects insecurely to the API Server for bootstrapping purposes
|
// buildInsecureBootstrapKubeConfig makes a kubeconfig object that connects insecurely to the API Server for bootstrapping purposes
|
||||||
func buildInsecureBootstrapKubeConfig(endpoint, clustername string) *clientcmdapi.Config {
|
func buildInsecureBootstrapKubeConfig(endpoint, clustername string) *clientcmdapi.Config {
|
||||||
masterEndpoint := fmt.Sprintf("https://%s", endpoint)
|
controlPlaneEndpoint := fmt.Sprintf("https://%s", endpoint)
|
||||||
bootstrapConfig := kubeconfigutil.CreateBasic(masterEndpoint, clustername, BootstrapUser, []byte{})
|
bootstrapConfig := kubeconfigutil.CreateBasic(controlPlaneEndpoint, clustername, BootstrapUser, []byte{})
|
||||||
bootstrapConfig.Clusters[clustername].InsecureSkipTLSVerify = true
|
bootstrapConfig.Clusters[clustername].InsecureSkipTLSVerify = true
|
||||||
return bootstrapConfig
|
return bootstrapConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
// buildSecureBootstrapKubeConfig makes a kubeconfig object that connects securely to the API Server for bootstrapping purposes (validating with the specified CA)
|
// buildSecureBootstrapKubeConfig makes a kubeconfig object that connects securely to the API Server for bootstrapping purposes (validating with the specified CA)
|
||||||
func buildSecureBootstrapKubeConfig(endpoint string, caCert []byte, clustername string) *clientcmdapi.Config {
|
func buildSecureBootstrapKubeConfig(endpoint string, caCert []byte, clustername string) *clientcmdapi.Config {
|
||||||
masterEndpoint := fmt.Sprintf("https://%s", endpoint)
|
controlPlaneEndpoint := fmt.Sprintf("https://%s", endpoint)
|
||||||
bootstrapConfig := kubeconfigutil.CreateBasic(masterEndpoint, clustername, BootstrapUser, caCert)
|
bootstrapConfig := kubeconfigutil.CreateBasic(controlPlaneEndpoint, clustername, BootstrapUser, caCert)
|
||||||
return bootstrapConfig
|
return bootstrapConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,16 +34,16 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
masterV1alpha3YAML = "testdata/conversion/master/v1alpha3.yaml"
|
controlPlaneV1alpha3YAML = "testdata/conversion/controlplane/v1alpha3.yaml"
|
||||||
masterV1alpha3YAMLNonLinux = "testdata/conversion/master/v1alpha3_non_linux.yaml"
|
controlPlaneV1alpha3YAMLNonLinux = "testdata/conversion/controlplane/v1alpha3_non_linux.yaml"
|
||||||
masterV1beta1YAML = "testdata/conversion/master/v1beta1.yaml"
|
controlPlaneV1beta1YAML = "testdata/conversion/controlplane/v1beta1.yaml"
|
||||||
masterV1beta1YAMLNonLinux = "testdata/conversion/master/v1beta1_non_linux.yaml"
|
controlPlaneV1beta1YAMLNonLinux = "testdata/conversion/controlplane/v1beta1_non_linux.yaml"
|
||||||
masterInternalYAML = "testdata/conversion/master/internal.yaml"
|
controlPlaneInternalYAML = "testdata/conversion/controlplane/internal.yaml"
|
||||||
masterInternalYAMLNonLinux = "testdata/conversion/master/internal_non_linux.yaml"
|
controlPlaneInternalYAMLNonLinux = "testdata/conversion/controlplane/internal_non_linux.yaml"
|
||||||
masterIncompleteYAML = "testdata/defaulting/master/incomplete.yaml"
|
controlPlaneIncompleteYAML = "testdata/defaulting/controlplane/incomplete.yaml"
|
||||||
masterDefaultedYAML = "testdata/defaulting/master/defaulted.yaml"
|
controlPlaneDefaultedYAML = "testdata/defaulting/controlplane/defaulted.yaml"
|
||||||
masterDefaultedYAMLNonLinux = "testdata/defaulting/master/defaulted_non_linux.yaml"
|
controlPlaneDefaultedYAMLNonLinux = "testdata/defaulting/controlplane/defaulted_non_linux.yaml"
|
||||||
masterInvalidYAML = "testdata/validation/invalid_mastercfg.yaml"
|
controlPlaneInvalidYAML = "testdata/validation/invalid_controlplanecfg.yaml"
|
||||||
)
|
)
|
||||||
|
|
||||||
func diff(expected, actual []byte) string {
|
func diff(expected, actual []byte) string {
|
||||||
|
@ -141,15 +141,15 @@ func TestLoadInitConfigurationFromFile(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestInitConfigurationMarshallingFromFile(t *testing.T) {
|
func TestInitConfigurationMarshallingFromFile(t *testing.T) {
|
||||||
masterV1alpha3YAMLAbstracted := masterV1alpha3YAML
|
controlPlaneV1alpha3YAMLAbstracted := controlPlaneV1alpha3YAML
|
||||||
masterV1beta1YAMLAbstracted := masterV1beta1YAML
|
controlPlaneV1beta1YAMLAbstracted := controlPlaneV1beta1YAML
|
||||||
masterInternalYAMLAbstracted := masterInternalYAML
|
controlPlaneInternalYAMLAbstracted := controlPlaneInternalYAML
|
||||||
masterDefaultedYAMLAbstracted := masterDefaultedYAML
|
controlPlaneDefaultedYAMLAbstracted := controlPlaneDefaultedYAML
|
||||||
if runtime.GOOS != "linux" {
|
if runtime.GOOS != "linux" {
|
||||||
masterV1alpha3YAMLAbstracted = masterV1alpha3YAMLNonLinux
|
controlPlaneV1alpha3YAMLAbstracted = controlPlaneV1alpha3YAMLNonLinux
|
||||||
masterV1beta1YAMLAbstracted = masterV1beta1YAMLNonLinux
|
controlPlaneV1beta1YAMLAbstracted = controlPlaneV1beta1YAMLNonLinux
|
||||||
masterInternalYAMLAbstracted = masterInternalYAMLNonLinux
|
controlPlaneInternalYAMLAbstracted = controlPlaneInternalYAMLNonLinux
|
||||||
masterDefaultedYAMLAbstracted = masterDefaultedYAMLNonLinux
|
controlPlaneDefaultedYAMLAbstracted = controlPlaneDefaultedYAMLNonLinux
|
||||||
}
|
}
|
||||||
|
|
||||||
var tests = []struct {
|
var tests = []struct {
|
||||||
|
@ -161,32 +161,32 @@ func TestInitConfigurationMarshallingFromFile(t *testing.T) {
|
||||||
// and then marshals the internal object to the expected groupVersion
|
// and then marshals the internal object to the expected groupVersion
|
||||||
{ // v1alpha3 -> internal
|
{ // v1alpha3 -> internal
|
||||||
name: "v1alpha3IsDeprecated",
|
name: "v1alpha3IsDeprecated",
|
||||||
in: masterV1alpha3YAMLAbstracted,
|
in: controlPlaneV1alpha3YAMLAbstracted,
|
||||||
expectedErr: true,
|
expectedErr: true,
|
||||||
},
|
},
|
||||||
{ // v1beta1 -> internal
|
{ // v1beta1 -> internal
|
||||||
name: "v1beta1ToInternal",
|
name: "v1beta1ToInternal",
|
||||||
in: masterV1beta1YAMLAbstracted,
|
in: controlPlaneV1beta1YAMLAbstracted,
|
||||||
out: masterInternalYAMLAbstracted,
|
out: controlPlaneInternalYAMLAbstracted,
|
||||||
groupVersion: kubeadm.SchemeGroupVersion,
|
groupVersion: kubeadm.SchemeGroupVersion,
|
||||||
},
|
},
|
||||||
{ // v1beta1 -> internal -> v1beta1
|
{ // v1beta1 -> internal -> v1beta1
|
||||||
name: "v1beta1Tov1beta1",
|
name: "v1beta1Tov1beta1",
|
||||||
in: masterV1beta1YAMLAbstracted,
|
in: controlPlaneV1beta1YAMLAbstracted,
|
||||||
out: masterV1beta1YAMLAbstracted,
|
out: controlPlaneV1beta1YAMLAbstracted,
|
||||||
groupVersion: kubeadmapiv1beta1.SchemeGroupVersion,
|
groupVersion: kubeadmapiv1beta1.SchemeGroupVersion,
|
||||||
},
|
},
|
||||||
// These tests are reading one file that has only a subset of the fields populated, loading it using LoadInitConfigurationFromFile,
|
// These tests are reading one file that has only a subset of the fields populated, loading it using LoadInitConfigurationFromFile,
|
||||||
// and then marshals the internal object to the expected groupVersion
|
// and then marshals the internal object to the expected groupVersion
|
||||||
{ // v1beta1 -> default -> validate -> internal -> v1beta1
|
{ // v1beta1 -> default -> validate -> internal -> v1beta1
|
||||||
name: "incompleteYAMLToDefaultedv1beta1",
|
name: "incompleteYAMLToDefaultedv1beta1",
|
||||||
in: masterIncompleteYAML,
|
in: controlPlaneIncompleteYAML,
|
||||||
out: masterDefaultedYAMLAbstracted,
|
out: controlPlaneDefaultedYAMLAbstracted,
|
||||||
groupVersion: kubeadmapiv1beta1.SchemeGroupVersion,
|
groupVersion: kubeadmapiv1beta1.SchemeGroupVersion,
|
||||||
},
|
},
|
||||||
{ // v1beta1 -> validation should fail
|
{ // v1beta1 -> validation should fail
|
||||||
name: "invalidYAMLShouldFail",
|
name: "invalidYAMLShouldFail",
|
||||||
in: masterInvalidYAML,
|
in: controlPlaneInvalidYAML,
|
||||||
expectedErr: true,
|
expectedErr: true,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue