diff --git a/test/cmd/explain.sh b/test/cmd/explain.sh index cde26dad5726..003d6831d7f4 100755 --- a/test/cmd/explain.sh +++ b/test/cmd/explain.sh @@ -23,6 +23,8 @@ os::cmd::expect_success 'oc explain bc' os::cmd::expect_success 'oc explain image' os::cmd::expect_success 'oc explain is' +os::cmd::expect_success 'oc explain cronjob' + echo "explain: ok" os::test::junit::declare_suite_end diff --git a/vendor/k8s.io/kubernetes/hack/make-rules/test-cmd-util.sh b/vendor/k8s.io/kubernetes/hack/make-rules/test-cmd-util.sh index d4027ad0a915..d947355c852b 100755 --- a/vendor/k8s.io/kubernetes/hack/make-rules/test-cmd-util.sh +++ b/vendor/k8s.io/kubernetes/hack/make-rules/test-cmd-util.sh @@ -4120,6 +4120,8 @@ run_kubectl_explain_tests() { # shortcuts work kubectl explain po kubectl explain po.status.message + # cronjob work + kubectl explain cronjob set +o nounset set +o errexit diff --git a/vendor/k8s.io/kubernetes/pkg/kubectl/cmd/explain.go b/vendor/k8s.io/kubernetes/pkg/kubectl/cmd/explain.go index a339df7c811f..535bc34707f9 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubectl/cmd/explain.go +++ b/vendor/k8s.io/kubernetes/pkg/kubectl/cmd/explain.go @@ -33,12 +33,12 @@ import ( var ( explainLong = templates.LongDesc(` List the fields for supported resources - + 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: + .[.] - + 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.`) @@ -80,7 +80,6 @@ func RunExplain(f cmdutil.Factory, out, cmdErr io.Writer, cmd *cobra.Command, ar recursive := cmdutil.GetFlagBool(cmd, "recursive") apiVersionString := cmdutil.GetFlagString(cmd, "api-version") - apiVersion := schema.GroupVersion{} mapper, _ := f.Object() // TODO: After we figured out the new syntax to separate group and resource, allow @@ -105,19 +104,20 @@ func RunExplain(f cmdutil.Factory, out, cmdErr io.Writer, cmd *cobra.Command, ar } if len(apiVersionString) == 0 { - groupMeta, err := scheme.Registry.Group(gvk.Group) - if err != nil { - return err + if len(gvk.Version) == 0 { + groupMeta, err := scheme.Registry.Group(gvk.Group) + if err != nil { + return err + } + gvk = groupMeta.GroupVersion.WithKind(gvk.Kind) } - apiVersion = groupMeta.GroupVersion - } else { - apiVersion, err = schema.ParseGroupVersion(apiVersionString) + apiVersion, err := schema.ParseGroupVersion(apiVersionString) if err != nil { return err } + gvk = apiVersion.WithKind(gvk.Kind) } - gvk = apiVersion.WithKind(gvk.Kind) resources, err := f.OpenAPISchema() if err != nil {