From 6e04c08583312e82ab6cc10322388a22732d658d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Diogo=20Ferr=C3=A3o?= Date: Mon, 6 May 2024 14:50:04 +0100 Subject: [PATCH 1/4] add documentation to config command --- docs/stackit_config.md | 7 ++++++- go.mod | 6 ++---- internal/cmd/config/config.go | 4 +++- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/docs/stackit_config.md b/docs/stackit_config.md index d37248faa..1217267e1 100644 --- a/docs/stackit_config.md +++ b/docs/stackit_config.md @@ -4,7 +4,12 @@ Provides functionality for CLI configuration options ### Synopsis -Provides functionality for CLI configuration options. +Provides functionality for CLI configuration options +The configuration is stored in a file in the user's config directory, which is OS dependent. +Windows: %APPDATA%\stackit +Linux: $XDG_CONFIG_HOME/stackit or $HOME/.config/stackit +macOS: $HOME/Library/Application Support/stackit +The configuration file is named `cli-config.json` and is created automatically when setting a configuration option. ``` stackit config [flags] diff --git a/go.mod b/go.mod index 3aa62d279..72ff76e0d 100644 --- a/go.mod +++ b/go.mod @@ -9,6 +9,7 @@ require ( github.com/inhies/go-bytesize v0.0.0-20220417184213-4913239db9cf github.com/jedib0t/go-pretty/v6 v6.5.8 github.com/lmittmann/tint v1.0.4 + github.com/mattn/go-colorable v0.1.13 github.com/spf13/cobra v1.8.0 github.com/spf13/pflag v1.0.5 github.com/spf13/viper v1.18.2 @@ -28,10 +29,7 @@ require ( golang.org/x/text v0.15.0 ) -require ( - github.com/mattn/go-colorable v0.1.13 // indirect - github.com/mattn/go-isatty v0.0.17 // indirect -) +require github.com/mattn/go-isatty v0.0.17 // indirect require ( github.com/alessio/shellescape v1.4.2 // indirect diff --git a/internal/cmd/config/config.go b/internal/cmd/config/config.go index e02153fb0..9d928737a 100644 --- a/internal/cmd/config/config.go +++ b/internal/cmd/config/config.go @@ -1,6 +1,8 @@ package config import ( + "fmt" + "github.com/stackitcloud/stackit-cli/internal/cmd/config/list" "github.com/stackitcloud/stackit-cli/internal/cmd/config/set" "github.com/stackitcloud/stackit-cli/internal/cmd/config/unset" @@ -15,7 +17,7 @@ func NewCmd(p *print.Printer) *cobra.Command { cmd := &cobra.Command{ Use: "config", Short: "Provides functionality for CLI configuration options", - Long: "Provides functionality for CLI configuration options.", + Long: fmt.Sprintf("%s\n%s\n%s\n%s\n%s\n%s", "Provides functionality for CLI configuration options", "The configuration is stored in a file in the user's config directory, which is OS dependent.", "Windows: %APPDATA%\\stackit", "Linux: $XDG_CONFIG_HOME/stackit or $HOME/.config/stackit", "macOS: $HOME/Library/Application Support/stackit", "The configuration file is named `cli-config.json` and is created automatically when setting a configuration option."), Args: args.NoArgs, Run: utils.CmdHelp, } From 174b46879971c5b4769f9b837275ed775ac8bf38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Diogo=20Ferr=C3=A3o?= Date: Mon, 6 May 2024 14:56:29 +0100 Subject: [PATCH 2/4] Update internal/cmd/config/config.go Co-authored-by: Vicente Pinto --- internal/cmd/config/config.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/cmd/config/config.go b/internal/cmd/config/config.go index 9d928737a..af0e9069f 100644 --- a/internal/cmd/config/config.go +++ b/internal/cmd/config/config.go @@ -17,7 +17,7 @@ func NewCmd(p *print.Printer) *cobra.Command { cmd := &cobra.Command{ Use: "config", Short: "Provides functionality for CLI configuration options", - Long: fmt.Sprintf("%s\n%s\n%s\n%s\n%s\n%s", "Provides functionality for CLI configuration options", "The configuration is stored in a file in the user's config directory, which is OS dependent.", "Windows: %APPDATA%\\stackit", "Linux: $XDG_CONFIG_HOME/stackit or $HOME/.config/stackit", "macOS: $HOME/Library/Application Support/stackit", "The configuration file is named `cli-config.json` and is created automatically when setting a configuration option."), + Long: fmt.Sprintf("%s\n%s\n%s\n%s\n%s\n%s", "Provides functionality for CLI configuration options", "The configuration is stored in a file in the user's config directory, which is OS dependent.", "Windows: %APPDATA%\\stackit", "Linux: $XDG_CONFIG_HOME/stackit or $HOME/.config/stackit", "macOS: $HOME/Library/Application Support/stackit", "The configuration file is named `cli-config.json` and is created automatically in your first CLI run."), Args: args.NoArgs, Run: utils.CmdHelp, } From 2c547c411297e0e2854e323ac4a1c4c5bb4dacc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Diogo=20Ferr=C3=A3o?= Date: Mon, 6 May 2024 14:59:26 +0100 Subject: [PATCH 3/4] address comments --- internal/cmd/config/config.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/internal/cmd/config/config.go b/internal/cmd/config/config.go index af0e9069f..7c3fea56f 100644 --- a/internal/cmd/config/config.go +++ b/internal/cmd/config/config.go @@ -17,9 +17,15 @@ func NewCmd(p *print.Printer) *cobra.Command { cmd := &cobra.Command{ Use: "config", Short: "Provides functionality for CLI configuration options", - Long: fmt.Sprintf("%s\n%s\n%s\n%s\n%s\n%s", "Provides functionality for CLI configuration options", "The configuration is stored in a file in the user's config directory, which is OS dependent.", "Windows: %APPDATA%\\stackit", "Linux: $XDG_CONFIG_HOME/stackit or $HOME/.config/stackit", "macOS: $HOME/Library/Application Support/stackit", "The configuration file is named `cli-config.json` and is created automatically in your first CLI run."), - Args: args.NoArgs, - Run: utils.CmdHelp, + Long: fmt.Sprintf("%s\n%s\n%s\n%s\n%s\n%s", "Provides functionality for CLI configuration options", + "The configuration is stored in a file in the user's config directory, which is OS dependent.", + "Windows: %APPDATA%\\stackit", + "Linux: $XDG_CONFIG_HOME/stackit", + "macOS: $HOME/Library/Application Support/stackit", + "The configuration file is named `cli-config.json` and is created automatically in your first CLI run.", + ), + Args: args.NoArgs, + Run: utils.CmdHelp, } addSubcommands(cmd, p) return cmd From a0fe92667739d6ba3e334f3b3c667593e5930a02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Diogo=20Ferr=C3=A3o?= Date: Mon, 6 May 2024 15:02:02 +0100 Subject: [PATCH 4/4] generate docs --- docs/stackit_config.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/stackit_config.md b/docs/stackit_config.md index 1217267e1..ed8212d87 100644 --- a/docs/stackit_config.md +++ b/docs/stackit_config.md @@ -7,9 +7,9 @@ Provides functionality for CLI configuration options Provides functionality for CLI configuration options The configuration is stored in a file in the user's config directory, which is OS dependent. Windows: %APPDATA%\stackit -Linux: $XDG_CONFIG_HOME/stackit or $HOME/.config/stackit +Linux: $XDG_CONFIG_HOME/stackit macOS: $HOME/Library/Application Support/stackit -The configuration file is named `cli-config.json` and is created automatically when setting a configuration option. +The configuration file is named `cli-config.json` and is created automatically in your first CLI run. ``` stackit config [flags]