diff --git a/cmd/list.go b/cmd/list.go index cddc4907..7aa132eb 100644 --- a/cmd/list.go +++ b/cmd/list.go @@ -436,7 +436,7 @@ var listVariablesCmd = &cobra.Command{ env = append(env, returnNonEmptyString(fmt.Sprintf("%v", envvar.Scope))) env = append(env, returnNonEmptyString(fmt.Sprintf("%v", envvar.Name))) if reveal { - env = append(env, fmt.Sprintf("%v", envvar.Value)) + env = append(env, returnNonEmptyString(fmt.Sprintf("%v", envvar.Value))) outputOptions.MultiLine = true } data = append(data, env) diff --git a/cmd/shared.go b/cmd/shared.go index a40bf502..d2b4ca4c 100644 --- a/cmd/shared.go +++ b/cmd/shared.go @@ -38,6 +38,7 @@ var outputOptions = output.Options{ } var groupRoles = []string{"guest", "reporter", "developer", "maintainer", "owner"} +var variableScopes = []string{"global", "build", "runtime", "container_registry", "internal_container_registry"} var debugEnable bool diff --git a/cmd/variables.go b/cmd/variables.go index 826e1774..5eda4589 100644 --- a/cmd/variables.go +++ b/cmd/variables.go @@ -3,6 +3,7 @@ package cmd import ( "context" "fmt" + "slices" "strings" "github.com/uselagoon/machinery/api/lagoon" @@ -54,6 +55,10 @@ func addOrUpdateVariable(cmd *cobra.Command, args []string) error { return err } + if varScope != "" && !slices.Contains(variableScopes, strings.ToLower(varScope)) { + return fmt.Errorf("invalid scope '%s', valid scopes include: %s", varScope, strings.Join(variableScopes, ", ")) + } + current := lagoonCLIConfig.Current token := lagoonCLIConfig.Lagoons[current].Token lc := lclient.New(