Commit c7efab40 authored by Maciej Szulik's avatar Maciej Szulik

Fix kubectl explain for cronjobs

parent 2f4cca73
...@@ -4120,6 +4120,8 @@ run_kubectl_explain_tests() { ...@@ -4120,6 +4120,8 @@ run_kubectl_explain_tests() {
# shortcuts work # shortcuts work
kubectl explain po kubectl explain po
kubectl explain po.status.message kubectl explain po.status.message
# cronjob work
kubectl explain cronjob
set +o nounset set +o nounset
set +o errexit set +o errexit
......
...@@ -26,19 +26,18 @@ import ( ...@@ -26,19 +26,18 @@ import (
"k8s.io/kubernetes/pkg/kubectl/cmd/templates" "k8s.io/kubernetes/pkg/kubectl/cmd/templates"
cmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util" cmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util"
"k8s.io/kubernetes/pkg/kubectl/explain" "k8s.io/kubernetes/pkg/kubectl/explain"
"k8s.io/kubernetes/pkg/kubectl/scheme"
"k8s.io/kubernetes/pkg/kubectl/util/i18n" "k8s.io/kubernetes/pkg/kubectl/util/i18n"
) )
var ( var (
explainLong = templates.LongDesc(` explainLong = templates.LongDesc(`
List the fields for supported resources List the fields for supported resources
This command describes the fields associated with each supported API resource. This command describes the fields associated with each supported API resource.
Fields are identified via a simple JSONPath identifier: Fields are identified via a simple JSONPath identifier:
<type>.<fieldName>[.<fieldName>] <type>.<fieldName>[.<fieldName>]
Add the --recursive flag to display all of the fields at once without descriptions. Add the --recursive flag to display all of the fields at once without descriptions.
Information about each field is retrieved from the server in OpenAPI format.`) Information about each field is retrieved from the server in OpenAPI format.`)
...@@ -81,7 +80,6 @@ func RunExplain(f cmdutil.Factory, out, cmdErr io.Writer, cmd *cobra.Command, ar ...@@ -81,7 +80,6 @@ func RunExplain(f cmdutil.Factory, out, cmdErr io.Writer, cmd *cobra.Command, ar
recursive := cmdutil.GetFlagBool(cmd, "recursive") recursive := cmdutil.GetFlagBool(cmd, "recursive")
apiVersionString := cmdutil.GetFlagString(cmd, "api-version") apiVersionString := cmdutil.GetFlagString(cmd, "api-version")
apiVersion := schema.GroupVersion{}
mapper, _ := f.Object() mapper, _ := f.Object()
// TODO: After we figured out the new syntax to separate group and resource, allow // TODO: After we figured out the new syntax to separate group and resource, allow
...@@ -105,20 +103,13 @@ func RunExplain(f cmdutil.Factory, out, cmdErr io.Writer, cmd *cobra.Command, ar ...@@ -105,20 +103,13 @@ func RunExplain(f cmdutil.Factory, out, cmdErr io.Writer, cmd *cobra.Command, ar
} }
} }
if len(apiVersionString) == 0 { if len(apiVersionString) != 0 {
groupMeta, err := scheme.Registry.Group(gvk.Group) apiVersion, err := schema.ParseGroupVersion(apiVersionString)
if err != nil {
return err
}
apiVersion = groupMeta.GroupVersion
} else {
apiVersion, err = schema.ParseGroupVersion(apiVersionString)
if err != nil { if err != nil {
return err return err
} }
gvk = apiVersion.WithKind(gvk.Kind)
} }
gvk = apiVersion.WithKind(gvk.Kind)
resources, err := f.OpenAPISchema() resources, err := f.OpenAPISchema()
if err != nil { if err != nil {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment