github.com/argoproj/argo-cd/v3@v3.2.1/tools/cmd-docs/main.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "log" 6 "os" 7 "path/filepath" 8 "strings" 9 10 "github.com/spf13/cobra/doc" 11 12 controller "github.com/argoproj/argo-cd/v3/cmd/argocd-application-controller/commands" 13 argocdappsetcontroller "github.com/argoproj/argo-cd/v3/cmd/argocd-applicationset-controller/commands" 14 argocddex "github.com/argoproj/argo-cd/v3/cmd/argocd-dex/commands" 15 reposerver "github.com/argoproj/argo-cd/v3/cmd/argocd-repo-server/commands" 16 argocdserver "github.com/argoproj/argo-cd/v3/cmd/argocd-server/commands" 17 argocdcli "github.com/argoproj/argo-cd/v3/cmd/argocd/commands" 18 ) 19 20 func main() { 21 // set HOME env var so that default values involve user's home directory do not depend on the running user. 22 os.Setenv("HOME", "/home/user") 23 os.Setenv("XDG_CONFIG_HOME", "/home/user/.config") 24 25 identity := func(s string) string { return s } 26 headerPrepender := func(filename string) string { 27 // The default header looks like `Argocd app get`. The leading capital letter is off-putting. 28 // This header overrides the default. It's better visually and for search results. 29 filename = filepath.Base(filename) 30 filename = filename[:len(filename)-3] // Drop the '.md' 31 return fmt.Sprintf("# `%s` Command Reference\n\n", strings.ReplaceAll(filename, "_", " ")) 32 } 33 34 err := doc.GenMarkdownTreeCustom(argocdcli.NewCommand(), "./docs/user-guide/commands", headerPrepender, identity) 35 if err != nil { 36 log.Fatal(err) 37 } 38 39 err = doc.GenMarkdownTreeCustom(argocdserver.NewCommand(), "./docs/operator-manual/server-commands", headerPrepender, identity) 40 if err != nil { 41 log.Fatal(err) 42 } 43 44 err = doc.GenMarkdownTreeCustom(controller.NewCommand(), "./docs/operator-manual/server-commands", headerPrepender, identity) 45 if err != nil { 46 log.Fatal(err) 47 } 48 49 err = doc.GenMarkdownTreeCustom(reposerver.NewCommand(), "./docs/operator-manual/server-commands", headerPrepender, identity) 50 if err != nil { 51 log.Fatal(err) 52 } 53 54 err = doc.GenMarkdownTreeCustom(argocddex.NewCommand(), "./docs/operator-manual/server-commands", headerPrepender, identity) 55 if err != nil { 56 log.Fatal(err) 57 } 58 59 err = doc.GenMarkdownTreeCustom(argocdappsetcontroller.NewCommand(), "./docs/operator-manual/server-commands", headerPrepender, identity) 60 if err != nil { 61 log.Fatal(err) 62 } 63 }