generate.go 873 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package main
  2. import (
  3. "fmt"
  4. "os"
  5. "github.com/docker/docker/cli/cobraadaptor"
  6. cliflags "github.com/docker/docker/cli/flags"
  7. "github.com/spf13/cobra/doc"
  8. )
  9. func generateManPages(path string) error {
  10. header := &doc.GenManHeader{
  11. Title: "DOCKER",
  12. Section: "1",
  13. Source: "Docker Community",
  14. }
  15. flags := &cliflags.ClientFlags{
  16. Common: cliflags.InitCommonFlags(),
  17. }
  18. cmd := cobraadaptor.NewCobraAdaptor(flags).GetRootCommand()
  19. cmd.DisableAutoGenTag = true
  20. return doc.GenManTreeFromOpts(cmd, doc.GenManTreeOptions{
  21. Header: header,
  22. Path: path,
  23. CommandSeparator: "-",
  24. })
  25. }
  26. func main() {
  27. path := "/tmp"
  28. if len(os.Args) > 1 {
  29. path = os.Args[1]
  30. }
  31. fmt.Printf("Generating man pages into %s\n", path)
  32. if err := generateManPages(path); err != nil {
  33. fmt.Fprintf(os.Stderr, "Failed to generate man pages: %s\n", err.Error())
  34. }
  35. }