diff --git a/.generated_docs b/.generated_docs index b926c676e7b..65510a0abcd 100644 --- a/.generated_docs +++ b/.generated_docs @@ -6,6 +6,10 @@ docs/admin/kube-controller-manager.md docs/admin/kube-proxy.md docs/admin/kube-scheduler.md docs/admin/kubelet.md +docs/man/man1/kube-apiserver.1 +docs/man/man1/kube-controller-manager.1 +docs/man/man1/kube-proxy.1 +docs/man/man1/kube-scheduler.1 docs/man/man1/kubectl-annotate.1 docs/man/man1/kubectl-api-versions.1 docs/man/man1/kubectl-apply.1 @@ -78,6 +82,7 @@ docs/man/man1/kubectl-top.1 docs/man/man1/kubectl-uncordon.1 docs/man/man1/kubectl-version.1 docs/man/man1/kubectl.1 +docs/man/man1/kubelet.1 docs/user-guide/kubectl/kubectl.md docs/user-guide/kubectl/kubectl_annotate.md docs/user-guide/kubectl/kubectl_api-versions.md diff --git a/cmd/genman/gen_kubectl_man.go b/cmd/genman/gen_kube_man.go similarity index 63% rename from cmd/genman/gen_kubectl_man.go rename to cmd/genman/gen_kube_man.go index a0ddffd7e86..85361844ffb 100644 --- a/cmd/genman/gen_kubectl_man.go +++ b/cmd/genman/gen_kube_man.go @@ -27,17 +27,24 @@ import ( "github.com/spf13/cobra" "github.com/spf13/pflag" "k8s.io/kubernetes/cmd/genutils" - "k8s.io/kubernetes/pkg/kubectl/cmd" - cmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util" + apiservapp "k8s.io/kubernetes/cmd/kube-apiserver/app" + cmapp "k8s.io/kubernetes/cmd/kube-controller-manager/app" + proxyapp "k8s.io/kubernetes/cmd/kube-proxy/app" + kubeletapp "k8s.io/kubernetes/cmd/kubelet/app" + kubectlcmd "k8s.io/kubernetes/pkg/kubectl/cmd" + kubectlcmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util" + schapp "k8s.io/kubernetes/plugin/cmd/kube-scheduler/app" ) func main() { // use os.Args instead of "flags" because "flags" will mess up the man pages! path := "docs/man/man1" - if len(os.Args) == 2 { + module := "" + if len(os.Args) == 3 { path = os.Args[1] - } else if len(os.Args) > 2 { - fmt.Fprintf(os.Stderr, "usage: %s [output directory]\n", os.Args[0]) + module = os.Args[2] + } else { + fmt.Fprintf(os.Stderr, "usage: %s [output directory] [module] \n", os.Args[0]) os.Exit(1) } @@ -47,14 +54,57 @@ func main() { os.Exit(1) } - // Set environment variables used by kubectl so the output is consistent, + // Set environment variables used by command so the output is consistent, // regardless of where we run. os.Setenv("HOME", "/home/username") - // TODO os.Stdin should really be something like ioutil.Discard, but a Reader - kubectl := cmd.NewKubectlCommand(cmdutil.NewFactory(nil), os.Stdin, ioutil.Discard, ioutil.Discard) - genMarkdown(kubectl, "", outDir) - for _, c := range kubectl.Commands() { - genMarkdown(c, "kubectl", outDir) + + switch module { + case "kube-apiserver": + // generate manpage for kube-apiserver + apiserver := apiservapp.NewAPIServerCommand() + genMarkdown(apiserver, "", outDir) + for _, c := range apiserver.Commands() { + genMarkdown(c, "kube-apiserver", outDir) + } + case "kube-controller-manager": + // generate manpage for kube-controller-manager + controllermanager := cmapp.NewControllerManagerCommand() + genMarkdown(controllermanager, "", outDir) + for _, c := range controllermanager.Commands() { + genMarkdown(c, "kube-controller-manager", outDir) + } + case "kube-proxy": + // generate manpage for kube-proxy + proxy := proxyapp.NewProxyCommand() + genMarkdown(proxy, "", outDir) + for _, c := range proxy.Commands() { + genMarkdown(c, "kube-proxy", outDir) + } + case "kube-scheduler": + // generate manpage for kube-scheduler + scheduler := schapp.NewSchedulerCommand() + genMarkdown(scheduler, "", outDir) + for _, c := range scheduler.Commands() { + genMarkdown(c, "kube-scheduler", outDir) + } + case "kubelet": + // generate manpage for kubelet + kubelet := kubeletapp.NewKubeletCommand() + genMarkdown(kubelet, "", outDir) + for _, c := range kubelet.Commands() { + genMarkdown(c, "kubelet", outDir) + } + case "kubectl": + // generate manpage for kubectl + // TODO os.Stdin should really be something like ioutil.Discard, but a Reader + kubectl := kubectlcmd.NewKubectlCommand(kubectlcmdutil.NewFactory(nil), os.Stdin, ioutil.Discard, ioutil.Discard) + genMarkdown(kubectl, "", outDir) + for _, c := range kubectl.Commands() { + genMarkdown(c, "kubectl", outDir) + } + default: + fmt.Fprintf(os.Stderr, "Module %s is not supported", module) + os.Exit(1) } } diff --git a/docs/man/man1/kube-apiserver.1 b/docs/man/man1/kube-apiserver.1 new file mode 100644 index 00000000000..b6fd7a0f989 --- /dev/null +++ b/docs/man/man1/kube-apiserver.1 @@ -0,0 +1,3 @@ +This file is autogenerated, but we've stopped checking such files into the +repository to reduce the need for rebases. Please run hack/generate-docs.sh to +populate this file. diff --git a/docs/man/man1/kube-controller-manager.1 b/docs/man/man1/kube-controller-manager.1 new file mode 100644 index 00000000000..b6fd7a0f989 --- /dev/null +++ b/docs/man/man1/kube-controller-manager.1 @@ -0,0 +1,3 @@ +This file is autogenerated, but we've stopped checking such files into the +repository to reduce the need for rebases. Please run hack/generate-docs.sh to +populate this file. diff --git a/docs/man/man1/kube-proxy.1 b/docs/man/man1/kube-proxy.1 new file mode 100644 index 00000000000..b6fd7a0f989 --- /dev/null +++ b/docs/man/man1/kube-proxy.1 @@ -0,0 +1,3 @@ +This file is autogenerated, but we've stopped checking such files into the +repository to reduce the need for rebases. Please run hack/generate-docs.sh to +populate this file. diff --git a/docs/man/man1/kube-scheduler.1 b/docs/man/man1/kube-scheduler.1 new file mode 100644 index 00000000000..b6fd7a0f989 --- /dev/null +++ b/docs/man/man1/kube-scheduler.1 @@ -0,0 +1,3 @@ +This file is autogenerated, but we've stopped checking such files into the +repository to reduce the need for rebases. Please run hack/generate-docs.sh to +populate this file. diff --git a/docs/man/man1/kubelet.1 b/docs/man/man1/kubelet.1 new file mode 100644 index 00000000000..b6fd7a0f989 --- /dev/null +++ b/docs/man/man1/kubelet.1 @@ -0,0 +1,3 @@ +This file is autogenerated, but we've stopped checking such files into the +repository to reduce the need for rebases. Please run hack/generate-docs.sh to +populate this file. diff --git a/hack/lib/util.sh b/hack/lib/util.sh index f6b6d162bd2..8008f4c89cd 100755 --- a/hack/lib/util.sh +++ b/hack/lib/util.sh @@ -205,7 +205,13 @@ kube::util::gen-docs() { "${genfeddocs}" "${dest}/docs/admin/" "federation-controller-manager" mkdir -p "${dest}/docs/man/man1/" - "${genman}" "${dest}/docs/man/man1/" + "${genman}" "${dest}/docs/man/man1/" "kube-apiserver" + "${genman}" "${dest}/docs/man/man1/" "kube-controller-manager" + "${genman}" "${dest}/docs/man/man1/" "kube-proxy" + "${genman}" "${dest}/docs/man/man1/" "kube-scheduler" + "${genman}" "${dest}/docs/man/man1/" "kubelet" + "${genman}" "${dest}/docs/man/man1/" "kubectl" + mkdir -p "${dest}/docs/yaml/kubectl/" "${genyaml}" "${dest}/docs/yaml/kubectl/"