From 68cea87cfd332aeec075147de2329a83d1feddb8 Mon Sep 17 00:00:00 2001 From: Sean Sullivan Date: Wed, 31 Oct 2018 16:50:26 -0700 Subject: [PATCH] kubectl: remove unnecessary internal->external conversion before PrintObj --- pkg/kubectl/cmd/certificates/certificates.go | 2 +- pkg/kubectl/cmd/drain/drain.go | 6 +-- .../cmd/rollingupdate/rollingupdate.go | 6 +-- pkg/kubectl/cmd/rollout/rollout_history.go | 2 +- pkg/kubectl/cmd/rollout/rollout_pause.go | 4 +- pkg/kubectl/cmd/rollout/rollout_resume.go | 4 +- pkg/kubectl/cmd/rollout/rollout_undo.go | 2 +- pkg/kubectl/cmd/run/run.go | 1 - pkg/kubectl/cmd/taint/taint.go | 1 - pkg/kubectl/cmd/util/BUILD | 2 - pkg/kubectl/cmd/util/conversion.go | 40 ------------------- 11 files changed, 13 insertions(+), 57 deletions(-) delete mode 100644 pkg/kubectl/cmd/util/conversion.go diff --git a/pkg/kubectl/cmd/certificates/certificates.go b/pkg/kubectl/cmd/certificates/certificates.go index 058796fc8f7..fabc8d60da7 100644 --- a/pkg/kubectl/cmd/certificates/certificates.go +++ b/pkg/kubectl/cmd/certificates/certificates.go @@ -245,7 +245,7 @@ func (options *CertificateOptions) modifyCertificateCondition(builder *resource. } found++ - return options.PrintObj(cmdutil.AsDefaultVersionedOrOriginal(info.Object, info.Mapping), options.Out) + return options.PrintObj(info.Object, options.Out) }) if found == 0 { fmt.Fprintf(options.Out, "No resources found\n") diff --git a/pkg/kubectl/cmd/drain/drain.go b/pkg/kubectl/cmd/drain/drain.go index 429fed426d4..536b3f2a076 100644 --- a/pkg/kubectl/cmd/drain/drain.go +++ b/pkg/kubectl/cmd/drain/drain.go @@ -748,7 +748,7 @@ func (o *DrainOptions) RunCordonOrUncordon(desired bool) error { fmt.Fprintf(o.ErrOut, "error: %v\n", err) continue } - printObj(cmdutil.AsDefaultVersionedOrOriginal(nodeInfo.Object, nodeInfo.Mapping), o.Out) + printObj(nodeInfo.Object, o.Out) } else { if !o.DryRun { helper := resource.NewHelper(o.restClient, nodeInfo.Mapping) @@ -774,7 +774,7 @@ func (o *DrainOptions) RunCordonOrUncordon(desired bool) error { fmt.Fprintf(o.ErrOut, "%v\n", err) continue } - printObj(cmdutil.AsDefaultVersionedOrOriginal(nodeInfo.Object, nodeInfo.Mapping), o.Out) + printObj(nodeInfo.Object, o.Out) } } else { printObj, err := o.ToPrinter("skipped") @@ -782,7 +782,7 @@ func (o *DrainOptions) RunCordonOrUncordon(desired bool) error { fmt.Fprintf(o.ErrOut, "%v\n", err) continue } - printObj(cmdutil.AsDefaultVersionedOrOriginal(nodeInfo.Object, nodeInfo.Mapping), o.Out) + printObj(nodeInfo.Object, o.Out) } } diff --git a/pkg/kubectl/cmd/rollingupdate/rollingupdate.go b/pkg/kubectl/cmd/rollingupdate/rollingupdate.go index 2ed243f0cd2..4947e720308 100644 --- a/pkg/kubectl/cmd/rollingupdate/rollingupdate.go +++ b/pkg/kubectl/cmd/rollingupdate/rollingupdate.go @@ -403,10 +403,10 @@ func (o *RollingUpdateOptions) Run() error { if err != nil { return err } - if err := printer.PrintObj(cmdutil.AsDefaultVersionedOrOriginal(oldRc, nil), oldRcData); err != nil { + if err := printer.PrintObj(oldRc, oldRcData); err != nil { return err } - if err := printer.PrintObj(cmdutil.AsDefaultVersionedOrOriginal(newRc, nil), newRcData); err != nil { + if err := printer.PrintObj(newRc, newRcData); err != nil { return err } } @@ -455,7 +455,7 @@ func (o *RollingUpdateOptions) Run() error { if err != nil { return err } - return printer.PrintObj(cmdutil.AsDefaultVersionedOrOriginal(newRc, nil), o.Out) + return printer.PrintObj(newRc, o.Out) } func findNewName(args []string, oldRc *corev1.ReplicationController) string { diff --git a/pkg/kubectl/cmd/rollout/rollout_history.go b/pkg/kubectl/cmd/rollout/rollout_history.go index 0fbe08cced5..009c8d76ca4 100644 --- a/pkg/kubectl/cmd/rollout/rollout_history.go +++ b/pkg/kubectl/cmd/rollout/rollout_history.go @@ -168,6 +168,6 @@ func (o *RolloutHistoryOptions) Run() error { return err } - return printer.PrintObj(cmdutil.AsDefaultVersionedOrOriginal(info.Object, info.Mapping), o.Out) + return printer.PrintObj(info.Object, o.Out) }) } diff --git a/pkg/kubectl/cmd/rollout/rollout_pause.go b/pkg/kubectl/cmd/rollout/rollout_pause.go index 0cb82a5d617..70c5af4a698 100644 --- a/pkg/kubectl/cmd/rollout/rollout_pause.go +++ b/pkg/kubectl/cmd/rollout/rollout_pause.go @@ -164,7 +164,7 @@ func (o PauseOptions) RunPause() error { allErrs = append(allErrs, err) continue } - if err = printer.PrintObj(cmdutil.AsDefaultVersionedOrOriginal(info.Object, info.Mapping), o.Out); err != nil { + if err = printer.PrintObj(info.Object, o.Out); err != nil { allErrs = append(allErrs, err) } continue @@ -182,7 +182,7 @@ func (o PauseOptions) RunPause() error { allErrs = append(allErrs, err) continue } - if err = printer.PrintObj(cmdutil.AsDefaultVersionedOrOriginal(info.Object, info.Mapping), o.Out); err != nil { + if err = printer.PrintObj(info.Object, o.Out); err != nil { allErrs = append(allErrs, err) } } diff --git a/pkg/kubectl/cmd/rollout/rollout_resume.go b/pkg/kubectl/cmd/rollout/rollout_resume.go index 8626d8ec15a..e97c807173c 100644 --- a/pkg/kubectl/cmd/rollout/rollout_resume.go +++ b/pkg/kubectl/cmd/rollout/rollout_resume.go @@ -167,7 +167,7 @@ func (o ResumeOptions) RunResume() error { allErrs = append(allErrs, err) continue } - if err = printer.PrintObj(cmdutil.AsDefaultVersionedOrOriginal(info.Object, info.Mapping), o.Out); err != nil { + if err = printer.PrintObj(info.Object, o.Out); err != nil { allErrs = append(allErrs, err) } continue @@ -185,7 +185,7 @@ func (o ResumeOptions) RunResume() error { allErrs = append(allErrs, err) continue } - if err = printer.PrintObj(cmdutil.AsDefaultVersionedOrOriginal(info.Object, info.Mapping), o.Out); err != nil { + if err = printer.PrintObj(info.Object, o.Out); err != nil { allErrs = append(allErrs, err) } } diff --git a/pkg/kubectl/cmd/rollout/rollout_undo.go b/pkg/kubectl/cmd/rollout/rollout_undo.go index 690a7d340b8..2ab7a028871 100644 --- a/pkg/kubectl/cmd/rollout/rollout_undo.go +++ b/pkg/kubectl/cmd/rollout/rollout_undo.go @@ -162,7 +162,7 @@ func (o *UndoOptions) RunUndo() error { return err } - return printer.PrintObj(cmdutil.AsDefaultVersionedOrOriginal(info.Object, info.Mapping), o.Out) + return printer.PrintObj(info.Object, o.Out) }) return err diff --git a/pkg/kubectl/cmd/run/run.go b/pkg/kubectl/cmd/run/run.go index a864b4d6aeb..d8da7818361 100644 --- a/pkg/kubectl/cmd/run/run.go +++ b/pkg/kubectl/cmd/run/run.go @@ -691,7 +691,6 @@ func (o *RunOptions) createGeneratedObject(f cmdutil.Factory, cmd *cobra.Command return nil, err } } - actualObj = cmdutil.AsDefaultVersionedOrOriginal(actualObj, mapping) return &RunObject{ Object: actualObj, diff --git a/pkg/kubectl/cmd/taint/taint.go b/pkg/kubectl/cmd/taint/taint.go index 96ba761dcce..13dbcfeed4e 100644 --- a/pkg/kubectl/cmd/taint/taint.go +++ b/pkg/kubectl/cmd/taint/taint.go @@ -280,7 +280,6 @@ func (o TaintOptions) RunTaint() error { if err != nil { return err } - outputObj = cmdutil.AsDefaultVersionedOrOriginal(outputObj, mapping) printer, err := o.ToPrinter(operation) if err != nil { diff --git a/pkg/kubectl/cmd/util/BUILD b/pkg/kubectl/cmd/util/BUILD index 6d15cca7e0a..bad60cd16c8 100644 --- a/pkg/kubectl/cmd/util/BUILD +++ b/pkg/kubectl/cmd/util/BUILD @@ -3,7 +3,6 @@ load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") go_library( name = "go_default_library", srcs = [ - "conversion.go", "crdfinder.go", "factory.go", "factory_client_access.go", @@ -14,7 +13,6 @@ go_library( importpath = "k8s.io/kubernetes/pkg/kubectl/cmd/util", visibility = ["//build/visible_to:pkg_kubectl_cmd_util_CONSUMERS"], deps = [ - "//pkg/api/legacyscheme:go_default_library", "//pkg/kubectl/cmd/util/openapi:go_default_library", "//pkg/kubectl/cmd/util/openapi/validation:go_default_library", "//pkg/kubectl/scheme:go_default_library", diff --git a/pkg/kubectl/cmd/util/conversion.go b/pkg/kubectl/cmd/util/conversion.go deleted file mode 100644 index 98b02ee7127..00000000000 --- a/pkg/kubectl/cmd/util/conversion.go +++ /dev/null @@ -1,40 +0,0 @@ -/* -Copyright 2018 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 util - -import ( - "k8s.io/apimachinery/pkg/api/meta" - "k8s.io/apimachinery/pkg/runtime" - "k8s.io/apimachinery/pkg/runtime/schema" - "k8s.io/kubernetes/pkg/api/legacyscheme" -) - -// AsDefaultVersionedOrOriginal returns the object as a Go object in the external form if possible (matching the -// group version kind of the mapping if provided, a best guess based on serialization if not provided, or obj if it cannot be converted. -// TODO update call sites to specify the scheme they want on their builder. -func AsDefaultVersionedOrOriginal(obj runtime.Object, mapping *meta.RESTMapping) runtime.Object { - converter := runtime.ObjectConvertor(legacyscheme.Scheme) - groupVersioner := runtime.GroupVersioner(schema.GroupVersions(legacyscheme.Scheme.PrioritizedVersionsAllGroups())) - if mapping != nil { - groupVersioner = mapping.GroupVersionKind.GroupVersion() - } - - if obj, err := converter.ConvertToVersion(obj, groupVersioner); err == nil { - return obj - } - return obj -}