argo-cd/tools/cmd-docs/main.go
Matthieu MOREL 7cf5ed06d4
chore: enable gofumpt and whitespace linters (#18567)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-11 15:41:55 +00:00

57 lines
1.9 KiB
Go

package main
import (
"fmt"
"log"
"os"
"path/filepath"
"strings"
"github.com/spf13/cobra/doc"
controller "github.com/argoproj/argo-cd/v2/cmd/argocd-application-controller/commands"
argocddex "github.com/argoproj/argo-cd/v2/cmd/argocd-dex/commands"
reposerver "github.com/argoproj/argo-cd/v2/cmd/argocd-repo-server/commands"
argocdserver "github.com/argoproj/argo-cd/v2/cmd/argocd-server/commands"
argocdcli "github.com/argoproj/argo-cd/v2/cmd/argocd/commands"
)
func main() {
// set HOME env var so that default values involve user's home directory do not depend on the running user.
os.Setenv("HOME", "/home/user")
os.Setenv("XDG_CONFIG_HOME", "/home/user/.config")
identity := func(s string) string { return s }
headerPrepender := func(filename string) string {
// The default header looks like `Argocd app get`. The leading capital letter is off-putting.
// This header overrides the default. It's better visually and for search results.
filename = filepath.Base(filename)
filename = filename[:len(filename)-3] // Drop the '.md'
return fmt.Sprintf("# `%s` Command Reference\n\n", strings.ReplaceAll(filename, "_", " "))
}
err := doc.GenMarkdownTreeCustom(argocdcli.NewCommand(), "./docs/user-guide/commands", headerPrepender, identity)
if err != nil {
log.Fatal(err)
}
err = doc.GenMarkdownTreeCustom(argocdserver.NewCommand(), "./docs/operator-manual/server-commands", headerPrepender, identity)
if err != nil {
log.Fatal(err)
}
err = doc.GenMarkdownTreeCustom(controller.NewCommand(), "./docs/operator-manual/server-commands", headerPrepender, identity)
if err != nil {
log.Fatal(err)
}
err = doc.GenMarkdownTreeCustom(reposerver.NewCommand(), "./docs/operator-manual/server-commands", headerPrepender, identity)
if err != nil {
log.Fatal(err)
}
err = doc.GenMarkdownTreeCustom(argocddex.NewCommand(), "./docs/operator-manual/server-commands", headerPrepender, identity)
if err != nil {
log.Fatal(err)
}
}