pulumi/cmd/env_select.go
Matt Ellis d29f6fc4e5 Use tokens.QName instead of string as the type for environment
Internally, the engine deals with tokens.QName and not raw
strings. Push that up to the API boundary
2017-10-02 15:14:55 -07:00

30 lines
937 B
Go

// Copyright 2016-2017, Pulumi Corporation. All rights reserved.
package cmd
import (
"github.com/pulumi/pulumi/pkg/tokens"
"github.com/spf13/cobra"
"github.com/pulumi/pulumi/pkg/util/cmdutil"
)
func newEnvSelectCmd() *cobra.Command {
return &cobra.Command{
Use: "select [<env>]",
Short: "Switch the current workspace to the given environment",
Long: "Switch the current workspace to the given environment. This allows you to use\n" +
"other commands like `config`, `preview`, and `push` without needing to specify the\n" +
"environment name each and every time.\n" +
"\n" +
"If no <env> argument is supplied, the current environment is printed.",
Run: cmdutil.RunFunc(func(cmd *cobra.Command, args []string) error {
// Read in the name of the environment to switch to.
if len(args) == 0 {
return lumiEngine.GetCurrentEnv()
}
return lumiEngine.SelectEnv(tokens.QName(args[0]))
}),
}
}