From baafbf406ed9171d98c44b23c8d696edc413cf54 Mon Sep 17 00:00:00 2001 From: xiangpengzhao Date: Fri, 21 Apr 2017 10:11:01 +0800 Subject: [PATCH] Add support for PodPreset in kubectl get command --- pkg/kubectl/cmd/cmd.go | 1 + pkg/printers/internalversion/BUILD | 1 + pkg/printers/internalversion/printers.go | 17 +++++++++++++++++ 3 files changed, 19 insertions(+) diff --git a/pkg/kubectl/cmd/cmd.go b/pkg/kubectl/cmd/cmd.go index 3647683b1d..1870a42471 100644 --- a/pkg/kubectl/cmd/cmd.go +++ b/pkg/kubectl/cmd/cmd.go @@ -223,6 +223,7 @@ __custom_func() { * persistentvolumeclaims (aka 'pvc') * persistentvolumes (aka 'pv') * poddisruptionbudgets (aka 'pdb') + * podpreset * pods (aka 'po') * podsecuritypolicies (aka 'psp') * podtemplates diff --git a/pkg/printers/internalversion/BUILD b/pkg/printers/internalversion/BUILD index 67ca8fddfb..44bfb7cbbe 100644 --- a/pkg/printers/internalversion/BUILD +++ b/pkg/printers/internalversion/BUILD @@ -73,6 +73,7 @@ go_library( "//pkg/apis/extensions/v1beta1:go_default_library", "//pkg/apis/policy:go_default_library", "//pkg/apis/rbac:go_default_library", + "//pkg/apis/settings:go_default_library", "//pkg/apis/storage:go_default_library", "//pkg/apis/storage/util:go_default_library", "//pkg/client/clientset_generated/clientset:go_default_library", diff --git a/pkg/printers/internalversion/printers.go b/pkg/printers/internalversion/printers.go index b79dc4c40b..85e9e5803a 100644 --- a/pkg/printers/internalversion/printers.go +++ b/pkg/printers/internalversion/printers.go @@ -40,6 +40,7 @@ import ( "k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/apis/policy" "k8s.io/kubernetes/pkg/apis/rbac" + "k8s.io/kubernetes/pkg/apis/settings" "k8s.io/kubernetes/pkg/apis/storage" storageutil "k8s.io/kubernetes/pkg/apis/storage/util" "k8s.io/kubernetes/pkg/printers" @@ -100,6 +101,7 @@ var ( clusterColumns = []string{"NAME", "STATUS", "AGE"} networkPolicyColumns = []string{"NAME", "POD-SELECTOR", "AGE"} certificateSigningRequestColumns = []string{"NAME", "AGE", "REQUESTOR", "CONDITION"} + podPresetColumns = []string{"NAME", "AGE"} ) func printPod(pod *api.Pod, w io.Writer, options printers.PrintOptions) error { @@ -193,6 +195,8 @@ func AddHandlers(h *printers.HumanReadablePrinter) { h.Handler(certificateSigningRequestColumns, nil, printCertificateSigningRequestList) h.Handler(storageClassColumns, nil, printStorageClass) h.Handler(storageClassColumns, nil, printStorageClassList) + h.Handler(podPresetColumns, nil, printPodPreset) + h.Handler(podPresetColumns, nil, printPodPresetList) h.Handler(statusColumns, nil, printStatus) } @@ -1906,6 +1910,19 @@ func printStorageClassList(scList *storage.StorageClassList, w io.Writer, option return nil } +func printPodPreset(podPreset *settings.PodPreset, w io.Writer, options printers.PrintOptions) error { + return printObjectMeta(podPreset.ObjectMeta, w, options, false) +} + +func printPodPresetList(list *settings.PodPresetList, w io.Writer, options printers.PrintOptions) error { + for i := range list.Items { + if err := printPodPreset(&list.Items[i], w, options); err != nil { + return err + } + } + return nil +} + func printStatus(status *metav1.Status, w io.Writer, options printers.PrintOptions) error { if _, err := fmt.Fprintf(w, "%s\t%s\t%s\n", status.Status, status.Reason, status.Message); err != nil { return err