From 656c7e97ead50d83d0b4580e5bb3fbe2e9d40625 Mon Sep 17 00:00:00 2001 From: Jeroen Vervaeke Date: Mon, 10 Mar 2025 10:56:38 +0000 Subject: [PATCH] Moved additional long text into tools/doc --- internal/cli/api/api.go | 7 ------- .../api => tools/docs}/api_docs_long_text.txt | 0 tools/docs/main.go | 13 ------------- tools/docs/transformations.go | 17 +++++++++++++++++ 4 files changed, 17 insertions(+), 20 deletions(-) rename {internal/cli/api => tools/docs}/api_docs_long_text.txt (100%) diff --git a/internal/cli/api/api.go b/internal/cli/api/api.go index 8766ee2f1e..4175fa2031 100644 --- a/internal/cli/api/api.go +++ b/internal/cli/api/api.go @@ -16,7 +16,6 @@ package api import ( "bytes" - _ "embed" "errors" "fmt" "io" @@ -68,9 +67,6 @@ func Builder() *cobra.Command { return apiCmd } -//go:embed api_docs_long_text.txt -var APIDocsAdditionalLongText string - func createRootAPICommand() *cobra.Command { rootCmd := &cobra.Command{ Use: "api", @@ -80,9 +76,6 @@ func createRootAPICommand() *cobra.Command { For more information on - Atlas Administration API see: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/ - Getting started with the Atlas Administration API: https://www.mongodb.com/docs/atlas/configure-api-access/#std-label-atlas-admin-api-access`, - Annotations: map[string]string{ - "DocsAdditionalLongText": APIDocsAdditionalLongText, - }, } rootCmd.SetHelpTemplate(cli.ExperimentalHelpTemplate) diff --git a/internal/cli/api/api_docs_long_text.txt b/tools/docs/api_docs_long_text.txt similarity index 100% rename from internal/cli/api/api_docs_long_text.txt rename to tools/docs/api_docs_long_text.txt diff --git a/tools/docs/main.go b/tools/docs/main.go index 3982ef954a..f6692d46fe 100644 --- a/tools/docs/main.go +++ b/tools/docs/main.go @@ -21,20 +21,8 @@ import ( "github.com/mongodb-labs/cobra2snooty" pluginCmd "github.com/mongodb/mongodb-atlas-cli/atlascli/internal/cli/plugin" "github.com/mongodb/mongodb-atlas-cli/atlascli/internal/cli/root" - "github.com/spf13/cobra" ) -func addAdditionalLongText(cmd *cobra.Command) { - if additionalLongText, found := cmd.Annotations["DocsAdditionalLongText"]; found && additionalLongText != "" { - cmd.Long += "\n\n" - cmd.Long += additionalLongText - } - - for _, cmd := range cmd.Commands() { - addAdditionalLongText(cmd) - } -} - func main() { if err := os.RemoveAll("./docs/command"); err != nil { log.Fatal(err) @@ -50,7 +38,6 @@ func main() { atlasBuilder.InitDefaultCompletionCmd() applyTransformations(atlasBuilder) - addAdditionalLongText(atlasBuilder) if err := cobra2snooty.GenTreeDocs(atlasBuilder, "./docs/command"); err != nil { log.Fatal(err) diff --git a/tools/docs/transformations.go b/tools/docs/transformations.go index 576b09a653..1bac19245f 100644 --- a/tools/docs/transformations.go +++ b/tools/docs/transformations.go @@ -15,6 +15,7 @@ package main import ( + _ "embed" "regexp" "strings" @@ -23,6 +24,21 @@ import ( "github.com/spf13/cobra" ) +//go:embed api_docs_long_text.txt +var atlasAPIDocsAdditionalLongText string + +var additionalLongTexts = map[string]string{ + "atlas api": atlasAPIDocsAdditionalLongText, +} + +func addAdditionalLongText(cmd *cobra.Command) { + commandPath := cmd.CommandPath() + if additionalLongText, found := additionalLongTexts[commandPath]; found && additionalLongText != "" { + cmd.Long += "\n\n" + cmd.Long += additionalLongText + } +} + func isAPICommand(cmd *cobra.Command) bool { return regexp.MustCompile("^atlas api( |$)").MatchString(cmd.CommandPath()) } @@ -72,6 +88,7 @@ func removePluginCommands(cmd *cobra.Command) { func applyTransformations(cmd *cobra.Command) { setDisableAutoGenTag(cmd) removePluginCommands(cmd) + addAdditionalLongText(cmd) if isAPICommand(cmd) { markExperimenalToAPICommands(cmd)