github.com/kubeshop/testkube@v1.17.23/cmd/kubectl-testkube/commands/status.go (about) 1 package commands 2 3 import ( 4 "github.com/spf13/cobra" 5 6 "github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/common" 7 "github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/oauth" 8 "github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/telemetry" 9 "github.com/kubeshop/testkube/cmd/kubectl-testkube/config" 10 "github.com/kubeshop/testkube/pkg/ui" 11 ) 12 13 func NewStatusCmd() *cobra.Command { 14 cmd := &cobra.Command{ 15 Use: "status [feature|resource]", 16 Short: "Show status of feature or resource", 17 Annotations: map[string]string{cmdGroupAnnotation: cmdGroupCommands}, 18 Run: func(cmd *cobra.Command, args []string) { 19 ui.NL() 20 ui.Print(ui.IconRocket + " Getting status on the testkube CLI") 21 22 cfg, err := config.Load() 23 ui.ExitOnError(" Loading config file failed", err) 24 25 if cfg.TelemetryEnabled { 26 ui.PrintEnabled("Telemetry on CLI", "enabled") 27 } else { 28 ui.PrintDisabled("Telemetry on CLI", "disabled") 29 } 30 31 client, _, err := common.GetClient(cmd) 32 ui.ExitOnError("getting client", err) 33 34 config, err := client.GetConfig() 35 ui.ExitOnError(" Getting API config failed", err) 36 if config.EnableTelemetry { 37 ui.PrintEnabled("Telemetry on API", "enabled") 38 } else { 39 ui.PrintDisabled("Telemetry on API", "disabled") 40 } 41 42 if cfg.OAuth2Data.Enabled { 43 ui.PrintEnabled("OAuth", "enabled") 44 } else { 45 ui.PrintDisabled("Oauth", "disabled") 46 } 47 ui.NL() 48 }, 49 } 50 51 cmd.AddCommand(telemetry.NewStatusTelemetryCmd()) 52 cmd.AddCommand(oauth.NewStatusOAuthCmd()) 53 54 return cmd 55 }