mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-31 07:20:13 +00:00
kubeadm: use output/v1alpha2 in kubeadm commands
Use the new API for "config images list" and "token list".
This commit is contained in:
parent
2d4fcedbcf
commit
b92966aeac
@ -38,7 +38,7 @@ import (
|
||||
kubeadmscheme "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/scheme"
|
||||
kubeadmapiv1 "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta3"
|
||||
outputapischeme "k8s.io/kubernetes/cmd/kubeadm/app/apis/output/scheme"
|
||||
outputapiv1alpha1 "k8s.io/kubernetes/cmd/kubeadm/app/apis/output/v1alpha1"
|
||||
outputapiv1alpha2 "k8s.io/kubernetes/cmd/kubeadm/app/apis/output/v1alpha2"
|
||||
"k8s.io/kubernetes/cmd/kubeadm/app/cmd/options"
|
||||
cmdutil "k8s.io/kubernetes/cmd/kubeadm/app/cmd/util"
|
||||
"k8s.io/kubernetes/cmd/kubeadm/app/componentconfigs"
|
||||
@ -413,7 +413,7 @@ type imageTextPrinter struct {
|
||||
// PrintObj is an implementation of ResourcePrinter.PrintObj for plain text output
|
||||
func (itp *imageTextPrinter) PrintObj(obj runtime.Object, writer io.Writer) error {
|
||||
var err error
|
||||
if imgs, ok := obj.(*outputapiv1alpha1.Images); ok {
|
||||
if imgs, ok := obj.(*outputapiv1alpha2.Images); ok {
|
||||
_, err = fmt.Fprintln(writer, strings.Join(imgs.Images, "\n"))
|
||||
} else {
|
||||
err = errors.New("unexpected object type")
|
||||
@ -436,7 +436,7 @@ func (ipf *imageTextPrintFlags) ToPrinter(outputFormat string) (output.Printer,
|
||||
func (i *ImagesList) Run(out io.Writer, printer output.Printer) error {
|
||||
imgs := images.GetControlPlaneImages(&i.cfg.ClusterConfiguration)
|
||||
|
||||
if err := printer.PrintObj(&outputapiv1alpha1.Images{Images: imgs}, out); err != nil {
|
||||
if err := printer.PrintObj(&outputapiv1alpha2.Images{Images: imgs}, out); err != nil {
|
||||
return errors.Wrap(err, "unable to print images")
|
||||
}
|
||||
|
||||
|
@ -253,7 +253,7 @@ k8s.gcr.io/coredns/coredns:{{.CoreDNSVersion}}
|
||||
outputFormat: "json",
|
||||
expectedOutput: `{
|
||||
"kind": "Images",
|
||||
"apiVersion": "output.kubeadm.k8s.io/v1alpha1",
|
||||
"apiVersion": "output.kubeadm.k8s.io/v1alpha2",
|
||||
"images": [
|
||||
"k8s.gcr.io/kube-apiserver:{{.KubeVersion}}",
|
||||
"k8s.gcr.io/kube-controller-manager:{{.KubeVersion}}",
|
||||
@ -272,7 +272,7 @@ k8s.gcr.io/coredns/coredns:{{.CoreDNSVersion}}
|
||||
KubernetesVersion: dummyKubernetesVersionStr,
|
||||
},
|
||||
outputFormat: "yaml",
|
||||
expectedOutput: `apiVersion: output.kubeadm.k8s.io/v1alpha1
|
||||
expectedOutput: `apiVersion: output.kubeadm.k8s.io/v1alpha2
|
||||
images:
|
||||
- k8s.gcr.io/kube-apiserver:{{.KubeVersion}}
|
||||
- k8s.gcr.io/kube-controller-manager:{{.KubeVersion}}
|
||||
|
@ -41,11 +41,10 @@ import (
|
||||
|
||||
bootstraptokenv1 "k8s.io/kubernetes/cmd/kubeadm/app/apis/bootstraptoken/v1"
|
||||
kubeadmscheme "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/scheme"
|
||||
kubeadmapiv1beta2 "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta2"
|
||||
kubeadmapiv1 "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta3"
|
||||
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/validation"
|
||||
outputapischeme "k8s.io/kubernetes/cmd/kubeadm/app/apis/output/scheme"
|
||||
outputapiv1alpha1 "k8s.io/kubernetes/cmd/kubeadm/app/apis/output/v1alpha1"
|
||||
outputapiv1alpha2 "k8s.io/kubernetes/cmd/kubeadm/app/apis/output/v1alpha2"
|
||||
"k8s.io/kubernetes/cmd/kubeadm/app/cmd/options"
|
||||
cmdutil "k8s.io/kubernetes/cmd/kubeadm/app/cmd/util"
|
||||
kubeadmconstants "k8s.io/kubernetes/cmd/kubeadm/app/constants"
|
||||
@ -300,7 +299,7 @@ func RunGenerateToken(out io.Writer) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func formatBootstrapToken(obj *outputapiv1alpha1.BootstrapToken) string {
|
||||
func formatBootstrapToken(obj *outputapiv1alpha2.BootstrapToken) string {
|
||||
ttl := "<forever>"
|
||||
expires := "<never>"
|
||||
if obj.Expires != nil {
|
||||
@ -347,7 +346,7 @@ func (ttp *tokenTextPrinter) PrintObj(obj runtime.Object, writer io.Writer) erro
|
||||
}
|
||||
|
||||
// Print token
|
||||
fmt.Fprint(tabw, formatBootstrapToken(obj.(*outputapiv1alpha1.BootstrapToken)))
|
||||
fmt.Fprint(tabw, formatBootstrapToken(obj.(*outputapiv1alpha2.BootstrapToken)))
|
||||
|
||||
return tabw.Flush()
|
||||
}
|
||||
@ -391,9 +390,9 @@ func RunListTokens(out io.Writer, errW io.Writer, client clientset.Interface, pr
|
||||
}
|
||||
|
||||
// Convert token into versioned output structure
|
||||
outputToken := outputapiv1alpha1.BootstrapToken{
|
||||
BootstrapToken: kubeadmapiv1beta2.BootstrapToken{
|
||||
Token: &kubeadmapiv1beta2.BootstrapTokenString{ID: token.Token.ID, Secret: token.Token.Secret},
|
||||
outputToken := outputapiv1alpha2.BootstrapToken{
|
||||
BootstrapToken: bootstraptokenv1.BootstrapToken{
|
||||
Token: &bootstraptokenv1.BootstrapTokenString{ID: token.Token.ID, Secret: token.Token.Secret},
|
||||
Description: token.Description,
|
||||
TTL: token.TTL,
|
||||
Expires: token.Expires,
|
||||
|
@ -33,10 +33,9 @@ import (
|
||||
"k8s.io/client-go/tools/clientcmd"
|
||||
|
||||
bootstraptokenv1 "k8s.io/kubernetes/cmd/kubeadm/app/apis/bootstraptoken/v1"
|
||||
kubeadmapiv1beta2 "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta2"
|
||||
kubeadmapiv1 "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta3"
|
||||
outputapischeme "k8s.io/kubernetes/cmd/kubeadm/app/apis/output/scheme"
|
||||
outputapiv1alpha1 "k8s.io/kubernetes/cmd/kubeadm/app/apis/output/v1alpha1"
|
||||
outputapiv1alpha2 "k8s.io/kubernetes/cmd/kubeadm/app/apis/output/v1alpha2"
|
||||
"k8s.io/kubernetes/cmd/kubeadm/app/util/output"
|
||||
)
|
||||
|
||||
@ -360,7 +359,7 @@ func TestTokenOutput(t *testing.T) {
|
||||
outputFormat: "json",
|
||||
expected: `{
|
||||
"kind": "BootstrapToken",
|
||||
"apiVersion": "output.kubeadm.k8s.io/v1alpha1",
|
||||
"apiVersion": "output.kubeadm.k8s.io/v1alpha2",
|
||||
"token": "abcdef.1234567890123456",
|
||||
"description": "valid bootstrap tooken",
|
||||
"usages": [
|
||||
@ -381,7 +380,7 @@ func TestTokenOutput(t *testing.T) {
|
||||
usages: []string{"signing", "authentication"},
|
||||
extraGroups: []string{"system:bootstrappers:kubeadm:default-node-token"},
|
||||
outputFormat: "yaml",
|
||||
expected: `apiVersion: output.kubeadm.k8s.io/v1alpha1
|
||||
expected: `apiVersion: output.kubeadm.k8s.io/v1alpha2
|
||||
description: valid bootstrap tooken
|
||||
groups:
|
||||
- system:bootstrappers:kubeadm:default-node-token
|
||||
@ -428,9 +427,9 @@ abcdef.1234567890123456 <forever> <never> signing,authentication valid b
|
||||
}
|
||||
for _, tc := range testCases {
|
||||
t.Run(tc.name, func(t *testing.T) {
|
||||
token := outputapiv1alpha1.BootstrapToken{
|
||||
BootstrapToken: kubeadmapiv1beta2.BootstrapToken{
|
||||
Token: &kubeadmapiv1beta2.BootstrapTokenString{ID: tc.id, Secret: tc.secret},
|
||||
token := outputapiv1alpha2.BootstrapToken{
|
||||
BootstrapToken: bootstraptokenv1.BootstrapToken{
|
||||
Token: &bootstraptokenv1.BootstrapTokenString{ID: tc.id, Secret: tc.secret},
|
||||
Description: tc.description,
|
||||
Usages: tc.usages,
|
||||
Groups: tc.extraGroups,
|
||||
|
Loading…
Reference in New Issue
Block a user