diff --git a/pkg/kubectl/cmd/delete.go b/pkg/kubectl/cmd/delete.go index fd17b30ad57..7baaba3967f 100644 --- a/pkg/kubectl/cmd/delete.go +++ b/pkg/kubectl/cmd/delete.go @@ -67,11 +67,16 @@ $ kubectl delete pods --all` ) func NewCmdDelete(f *cmdutil.Factory, out io.Writer) *cobra.Command { - p := kubectl.NewHumanReadablePrinter(false, false, false, false, []string{}) - validArgs := p.HandledResources() - options := &DeleteOptions{} + // retrieve a list of handled resources from printer as valid args + validArgs := []string{} + p, err := f.Printer(nil, false, false, false, false, []string{}) + cmdutil.CheckErr(err) + if p != nil { + validArgs = p.HandledResources() + } + cmd := &cobra.Command{ Use: "delete ([-f FILENAME] | TYPE [(NAME | -l label | --all)])", Short: "Delete resources by filenames, stdin, resources and names, or by resources and label selector.", diff --git a/pkg/kubectl/cmd/get.go b/pkg/kubectl/cmd/get.go index fea289d95dd..04d8fb96f07 100644 --- a/pkg/kubectl/cmd/get.go +++ b/pkg/kubectl/cmd/get.go @@ -74,10 +74,16 @@ $ kubectl get rc/web service/frontend pods/web-pod-13je7` // NewCmdGet creates a command object for the generic "get" action, which // retrieves one or more resources from a server. func NewCmdGet(f *cmdutil.Factory, out io.Writer) *cobra.Command { - p := kubectl.NewHumanReadablePrinter(false, false, false, false, []string{}) - validArgs := p.HandledResources() options := &GetOptions{} + // retrieve a list of handled resources from printer as valid args + validArgs := []string{} + p, err := f.Printer(nil, false, false, false, false, []string{}) + cmdutil.CheckErr(err) + if p != nil { + validArgs = p.HandledResources() + } + cmd := &cobra.Command{ Use: "get [(-o|--output=)json|yaml|wide|go-template=...|go-template-file=...|jsonpath=...|jsonpath-file=...] (TYPE [NAME | -l label] | TYPE/NAME ...) [flags]", Short: "Display one or many resources", diff --git a/pkg/kubectl/cmd/label.go b/pkg/kubectl/cmd/label.go index 44255881358..6de412d8e71 100644 --- a/pkg/kubectl/cmd/label.go +++ b/pkg/kubectl/cmd/label.go @@ -65,6 +65,8 @@ $ kubectl label pods foo bar-` func NewCmdLabel(f *cmdutil.Factory, out io.Writer) *cobra.Command { options := &LabelOptions{} + + // retrieve a list of handled resources from printer as valid args validArgs := []string{} p, err := f.Printer(nil, false, false, false, false, []string{}) cmdutil.CheckErr(err)