Merge pull request #10701 from feihujiang/outputTheSameErrorUsingDescribeForNonexist

Output the same error when using kubectl describe for a nonexisting resource
This commit is contained in:
Jerzy Szczepkowski 2015-07-31 12:56:58 +02:00
commit 95072f2ee2

View File

@ -112,7 +112,7 @@ func RunDescribe(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []s
infos, err := r.Infos() infos, err := r.Infos()
if err != nil { if err != nil {
if apierrors.IsNotFound(err) && len(args) == 2 { if apierrors.IsNotFound(err) && len(args) == 2 {
return DescribeMatchingResources(mapper, typer, describer, f, cmdNamespace, args[0], args[1], out) return DescribeMatchingResources(mapper, typer, describer, f, cmdNamespace, args[0], args[1], out, err)
} }
return err return err
} }
@ -128,7 +128,7 @@ func RunDescribe(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []s
return nil return nil
} }
func DescribeMatchingResources(mapper meta.RESTMapper, typer runtime.ObjectTyper, describer kubectl.Describer, f *cmdutil.Factory, namespace, rsrc, prefix string, out io.Writer) error { func DescribeMatchingResources(mapper meta.RESTMapper, typer runtime.ObjectTyper, describer kubectl.Describer, f *cmdutil.Factory, namespace, rsrc, prefix string, out io.Writer, originalError error) error {
r := resource.NewBuilder(mapper, typer, f.ClientMapperForCommand()). r := resource.NewBuilder(mapper, typer, f.ClientMapperForCommand()).
NamespaceParam(namespace).DefaultNamespace(). NamespaceParam(namespace).DefaultNamespace().
ResourceTypeOrNameArgs(true, rsrc). ResourceTypeOrNameArgs(true, rsrc).
@ -152,7 +152,7 @@ func DescribeMatchingResources(mapper meta.RESTMapper, typer runtime.ObjectTyper
} }
} }
if !isFound { if !isFound {
return fmt.Errorf("%v %q not found", rsrc, prefix) return originalError
} }
return nil return nil
} }