Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions cmd/env_flags_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ const (
// setting the corresponding DEVSY_* env var pushes the value into the bound
// pflag at registration time, satisfying cobra's required-flag check.
func TestOptInEnvFlags_AppliesEnvValueToFlag(t *testing.T) {
t.Setenv(envProEnabled, "true")
t.Setenv(envPlatformEnabled, "true")
cases := []struct {
cmdPath string
flagName string
Expand Down Expand Up @@ -94,7 +94,7 @@ func TestOptInEnvFlags_NoEnvLeavesDefault(t *testing.T) {
// BindEnv: setting DEVSY_HOST="" must NOT mark the flag as Changed (otherwise
// MarkFlagRequired would be satisfied by an empty value).
func TestOptInEnvFlags_EmptyEnvIsNoOp(t *testing.T) {
t.Setenv(envProEnabled, "true")
t.Setenv(envPlatformEnabled, "true")
t.Setenv(envDevsyHost, "")
rootCmd, _ := BuildRoot()
cmd := resolveCommand(t, rootCmd, "pro workspace list")
Expand All @@ -107,7 +107,7 @@ func TestOptInEnvFlags_EmptyEnvIsNoOp(t *testing.T) {
// wins over a value supplied via DEVSY_*. This is the standard precedence
// users expect: flag > env > default.
func TestOptInEnvFlags_CLIOverridesEnv(t *testing.T) {
t.Setenv(envProEnabled, "true")
t.Setenv(envPlatformEnabled, "true")
t.Setenv(envDevsyHost, "env-value")
rootCmd, _ := BuildRoot()
// Replace the leaf command's RunE so Execute() doesn't try to actually
Expand All @@ -125,7 +125,7 @@ func TestOptInEnvFlags_CLIOverridesEnv(t *testing.T) {
}

func TestOptInEnvFlags_EnvSatisfiesRequired(t *testing.T) {
t.Setenv(envProEnabled, "true")
t.Setenv(envPlatformEnabled, "true")
t.Setenv(envDevsyHost, "from-env.example.com")
rootCmd, _ := BuildRoot()
leaf := resolveCommand(t, rootCmd, "pro workspace list")
Expand All @@ -139,17 +139,17 @@ func TestOptInEnvFlags_EnvSatisfiesRequired(t *testing.T) {
assert.Equal(t, "from-env.example.com", seen)
}

// TestOptInEnvFlags_ProSubcommandSweep asserts that DEVSY_HOST applies to
// TestOptInEnvFlags_PlatformSubcommandSweep asserts that DEVSY_HOST applies to
// every pro subcommand that exposes --host (and similarly for --project).
// This catches the regression where a future addition to cmd/pro/ forgets
// the inline BindEnv call.
func TestOptInEnvFlags_ProSubcommandSweep(t *testing.T) {
t.Setenv(envProEnabled, "true")
func TestOptInEnvFlags_PlatformSubcommandSweep(t *testing.T) {
t.Setenv(envPlatformEnabled, "true")
for _, env := range []string{envDevsyHost, envDevsyProject} {
t.Setenv(env, "sweep-"+strings.ToLower(env))
}
rootCmd, _ := BuildRoot()
proCmd := resolveCommand(t, rootCmd, "pro")
platformCmd := resolveCommand(t, rootCmd, "pro")

var walk func(c *cobra.Command)
walk = func(c *cobra.Command) {
Expand All @@ -165,12 +165,12 @@ func TestOptInEnvFlags_ProSubcommandSweep(t *testing.T) {
walk(child)
}
}
walk(proCmd)
walk(platformCmd)
}

// TestProCommand_HiddenWhenDisabled verifies pro is gated off by default.
func TestProCommand_HiddenWhenDisabled(t *testing.T) {
t.Setenv(envProEnabled, "")
// TestPlatformCommand_HiddenWhenDisabled verifies pro is gated off by default.
func TestPlatformCommand_HiddenWhenDisabled(t *testing.T) {
t.Setenv(envPlatformEnabled, "")
rootCmd, _ := BuildRoot()
for _, c := range rootCmd.Commands() {
use := c.Use
Expand Down
6 changes: 3 additions & 3 deletions cmd/pro/list.go
Original file line number Diff line number Diff line change
Expand Up @@ -120,9 +120,9 @@ func (cmd *ListCmd) printJSON(
devsyConfig *config.Config,
platformInstances []*provider.PlatformInstance,
) error {
tableEntries := []*proTableEntry{}
tableEntries := []*platformTableEntry{}
for _, platformInstance := range platformInstances {
entry := &proTableEntry{
entry := &platformTableEntry{
PlatformInstance: platformInstance,
Context: devsyConfig.DefaultContext,
Capabilities: getCapabilities(devsyConfig, platformInstance),
Expand All @@ -148,7 +148,7 @@ func (cmd *ListCmd) printJSON(
return nil
}

type proTableEntry struct {
type platformTableEntry struct {
*provider.PlatformInstance

Authenticated *bool `json:"authenticated,omitempty"`
Expand Down
2 changes: 1 addition & 1 deletion cmd/pro/login.go
Original file line number Diff line number Diff line change
Expand Up @@ -245,7 +245,7 @@ func findInstance(

func (cmd *LoginCmd) resolveNewProviderName(devsyConfig *config.Config, host string) error {
if cmd.Provider == "" {
cmd.Provider = config.ProReleaseName
cmd.Provider = config.PlatformReleaseName
}
cmd.Provider = provider.ToPlatformInstanceID(cmd.Provider)

Expand Down
12 changes: 6 additions & 6 deletions cmd/pro/login_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import (
"github.com/stretchr/testify/suite"
)

const testProProviderName = "pro"
const testPlatformProviderName = "pro"

type loginSuite struct {
suite.Suite
Expand Down Expand Up @@ -58,12 +58,12 @@ func (s *loginSuite) TestConcurrentLoginFindsCreatedInstance() {
}

s.Require().NoError(provider.SavePlatformInstanceConfig("default", &provider.PlatformInstance{
Provider: testProProviderName,
Provider: testPlatformProviderName,
Host: "pro.example",
}))
s.Require().NoError(lock.Unlock())
s.Require().NoError(<-result)
s.Equal(testProProviderName, cmd.Provider)
s.Equal(testPlatformProviderName, cmd.Provider)
}

func (s *loginSuite) TestDifferentHostDoesNotWaitForLoginLock() {
Expand Down Expand Up @@ -114,18 +114,18 @@ func (s *loginSuite) TestEquivalentHostsShareLock() {

func (s *loginSuite) TestEquivalentHostFindsExistingInstance() {
s.Require().NoError(provider.SavePlatformInstanceConfig("default", &provider.PlatformInstance{
Provider: testProProviderName,
Provider: testPlatformProviderName,
Host: "Foo.Example.com",
}))
cmd := &LoginCmd{GlobalFlags: proflags.GlobalFlags{GlobalFlags: &rootflags.GlobalFlags{}}}
_, err := cmd.prepareProvider(context.Background(), "https://foo.example.com")
s.Require().NoError(err)
s.Equal(testProProviderName, cmd.Provider)
s.Equal(testPlatformProviderName, cmd.Provider)
}

func (s *loginSuite) TestDistinctHostsWithSameInstanceIDAreRejected() {
s.Require().NoError(provider.SavePlatformInstanceConfig("default", &provider.PlatformInstance{
Provider: testProProviderName,
Provider: testPlatformProviderName,
Host: "foo.example.com",
}))
cmd := &LoginCmd{GlobalFlags: proflags.GlobalFlags{GlobalFlags: &rootflags.GlobalFlags{}}}
Expand Down
40 changes: 20 additions & 20 deletions cmd/pro/pro.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@ import (
"github.com/spf13/cobra"
)

// NewProCmd returns a new command.
func NewProCmd(flags *flags.GlobalFlags) *cobra.Command {
// NewPlatformCmd returns a new command.
func NewPlatformCmd(flags *flags.GlobalFlags) *cobra.Command {
globalFlags := &proflags.GlobalFlags{GlobalFlags: flags}
proCmd := &cobra.Command{
platformCmd := &cobra.Command{
Use: "pro",
Short: "Devsy Pro commands",
SilenceUsage: true,
Expand All @@ -28,22 +28,22 @@ func NewProCmd(flags *flags.GlobalFlags) *cobra.Command {
},
}

proCmd.AddCommand(NewLoginCmd(globalFlags))
proCmd.AddCommand(NewLogoutCmd(globalFlags))
proCmd.AddCommand(NewListCmd(globalFlags))
proCmd.AddCommand(NewStartCmd(globalFlags))
proCmd.AddCommand(NewSelfCmd(globalFlags))
proCmd.AddCommand(NewVersionCmd(globalFlags))
proCmd.AddCommand(NewHealthCmd(globalFlags))
proCmd.AddCommand(NewCheckUpdateCmd(globalFlags))
proCmd.AddCommand(NewUpdateProviderCmd(globalFlags))
platformCmd.AddCommand(NewLoginCmd(globalFlags))
platformCmd.AddCommand(NewLogoutCmd(globalFlags))
platformCmd.AddCommand(NewListCmd(globalFlags))
platformCmd.AddCommand(NewStartCmd(globalFlags))
platformCmd.AddCommand(NewSelfCmd(globalFlags))
platformCmd.AddCommand(NewVersionCmd(globalFlags))
platformCmd.AddCommand(NewHealthCmd(globalFlags))
platformCmd.AddCommand(NewCheckUpdateCmd(globalFlags))
platformCmd.AddCommand(NewUpdateProviderCmd(globalFlags))

proCmd.AddCommand(procluster.NewClusterCmd(globalFlags))
proCmd.AddCommand(proproject.NewProjectCmd(globalFlags))
proCmd.AddCommand(protemplate.NewTemplateCmd(globalFlags))
proCmd.AddCommand(prouser.NewUserCmd(globalFlags))
proCmd.AddCommand(proworkspace.NewWorkspaceCmd(globalFlags))
proCmd.AddCommand(daemon.NewCmd(globalFlags))
proCmd.AddCommand(provider.NewProProviderCmd(globalFlags))
return proCmd
platformCmd.AddCommand(procluster.NewClusterCmd(globalFlags))
platformCmd.AddCommand(proproject.NewProjectCmd(globalFlags))
platformCmd.AddCommand(protemplate.NewTemplateCmd(globalFlags))
platformCmd.AddCommand(prouser.NewUserCmd(globalFlags))
platformCmd.AddCommand(proworkspace.NewWorkspaceCmd(globalFlags))
platformCmd.AddCommand(daemon.NewCmd(globalFlags))
platformCmd.AddCommand(provider.NewPlatformProviderCmd(globalFlags))
return platformCmd
}
10 changes: 5 additions & 5 deletions cmd/pro/proutil/proutil.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ const (
HeaderDisplayName = "Display Name"
)

// FindProProvider resolves the devsy config and provider config for the given
// FindPlatformProvider resolves the devsy config and provider config for the given
// pro host.
func FindProProvider(
func FindPlatformProvider(
ctx context.Context,
context, provider, host string,
) (*config.Config, *providerpkg.ProviderConfig, error) {
Expand All @@ -50,9 +50,9 @@ type HostRunFunc func(
provider *providerpkg.ProviderConfig,
) error

// findProProviderFn is FindProProvider behind a variable so HostRunE tests can
// findPlatformProviderFn is FindPlatformProvider behind a variable so HostRunE tests can
// stub provider resolution.
var findProProviderFn = FindProProvider
var findPlatformProviderFn = FindPlatformProvider

// HostRunE returns a RunE that resolves the provider for *host and passes it to
// run. *host is read when the command runs, after flag parsing.
Expand All @@ -63,7 +63,7 @@ func HostRunE(
) func(*cobra.Command, []string) error {
return func(cobraCmd *cobra.Command, _ []string) error {
ctx := cobraCmd.Context()
devsyConfig, pCfg, err := findProProviderFn(
devsyConfig, pCfg, err := findPlatformProviderFn(
ctx,
globalFlags.Context,
globalFlags.Provider,
Expand Down
12 changes: 6 additions & 6 deletions cmd/pro/proutil/proutil_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -70,13 +70,13 @@ func (s *hostFlagSuite) TestFlagValueSetsDest() {
}

func (s *hostFlagSuite) TestHostRunEResolvesHostAtRunTime() {
orig := findProProviderFn
s.T().Cleanup(func() { findProProviderFn = orig })
orig := findPlatformProviderFn
s.T().Cleanup(func() { findPlatformProviderFn = orig })

var gotContext, gotProvider, gotHost string
devsyConfig := &config.Config{}
pCfg := &providerpkg.ProviderConfig{Name: "p"}
findProProviderFn = func(
findPlatformProviderFn = func(
_ context.Context,
ctxName, providerName, host string,
) (*config.Config, *providerpkg.ProviderConfig, error) {
Expand Down Expand Up @@ -110,11 +110,11 @@ func (s *hostFlagSuite) TestHostRunEResolvesHostAtRunTime() {
}

func (s *hostFlagSuite) TestHostRunEPropagatesResolveErrorWithoutRunning() {
orig := findProProviderFn
s.T().Cleanup(func() { findProProviderFn = orig })
orig := findPlatformProviderFn
s.T().Cleanup(func() { findPlatformProviderFn = orig })

boom := errors.New("resolve failed")
findProProviderFn = func(
findPlatformProviderFn = func(
context.Context,
string, string, string,
) (*config.Config, *providerpkg.ProviderConfig, error) {
Expand Down
4 changes: 2 additions & 2 deletions cmd/pro/provider/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ import (
"github.com/spf13/cobra"
)

// NewProProviderCmd creates a new cobra command.
func NewProProviderCmd(globalFlags *flags.GlobalFlags) *cobra.Command {
// NewPlatformProviderCmd creates a new cobra command.
func NewPlatformProviderCmd(globalFlags *flags.GlobalFlags) *cobra.Command {
c := &cobra.Command{
Use: "provider",
Short: "Devsy Pro provider commands",
Expand Down
6 changes: 3 additions & 3 deletions cmd/pro/start.go
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ const (
trueString = "true"
)

var defaultReleaseName = config.ProReleaseName
var defaultReleaseName = config.PlatformReleaseName

var defaultDeploymentName = "loft" // Need to update helm chart if we change this!

Expand Down Expand Up @@ -89,8 +89,8 @@ type StartCmd struct {
func NewStartCmd(flags *proflags.GlobalFlags) *cobra.Command {
cmd := &StartCmd{
GlobalFlags: *flags,
Product: config.ProReleaseName,
ChartName: config.ProReleaseName,
Product: config.PlatformReleaseName,
ChartName: config.PlatformReleaseName,
}
startCmd := &cobra.Command{
Use: "start",
Expand Down
2 changes: 1 addition & 1 deletion cmd/pro/start_docker.go
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ type ContainerDetailsState struct {

func (cmd *StartCmd) startDocker(ctx context.Context) error {
log.Infof("Starting Devsy Pro in Docker")
name := config.ProReleaseName
name := config.PlatformReleaseName

// prepare installation
err := cmd.prepareDocker()
Expand Down
2 changes: 1 addition & 1 deletion cmd/pro/start_flags.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ func (cmd *StartCmd) registerClusterFlags(startCmd *cobra.Command) {
cliflags.String(
&cmd.Namespace,
names.Namespace,
config.ProReleaseName,
config.PlatformReleaseName,
"The namespace to install into",
),
cliflags.String(
Expand Down
6 changes: 3 additions & 3 deletions cmd/pro/start_uninstall.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ func uninstall(
return err
}

if err := cleanupProResources(ctx, kubeClient, restConfig, target.namespace); err != nil {
if err := cleanupPlatformResources(ctx, kubeClient, restConfig, target.namespace); err != nil {
return err
}

Expand Down Expand Up @@ -78,7 +78,7 @@ func runHelmUninstall(
return nil
}

func cleanupProResources(
func cleanupPlatformResources(
ctx context.Context,
kubeClient kubernetes.Interface,
restConfig *rest.Config,
Expand Down Expand Up @@ -155,7 +155,7 @@ func resolveReleaseName(
kubeClient kubernetes.Interface,
namespace string,
) (string, error) {
releaseName := config.ProReleaseName
releaseName := config.PlatformReleaseName
deploy, err := kubeClient.AppsV1().
Deployments(namespace).
Get(ctx, defaultDeploymentName, metav1.GetOptions{})
Expand Down
2 changes: 1 addition & 1 deletion cmd/pro/workspace/create.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ func NewCreateCmd(globalFlags *flags.GlobalFlags) *cobra.Command {
Short: "Create workspace instance",
Hidden: true,
RunE: func(cobraCmd *cobra.Command, args []string) error {
devsyConfig, provider, err := proutil.FindProProvider(
devsyConfig, provider, err := proutil.FindPlatformProvider(
cobraCmd.Context(),
cmd.Context,
cmd.Provider,
Expand Down
8 changes: 4 additions & 4 deletions cmd/pro/workspace/import.go
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ func (cmd *ImportCmd) Run(ctx context.Context, args []string) error {
return fmt.Errorf("usage: devsy pro workspace import <devsy-pro-host>")
}

devsyProHost := args[0]
platformHost := args[0]
devsyConfig, err := config.LoadConfig(cmd.Context, "")
if err != nil {
return err
Expand All @@ -89,7 +89,7 @@ func (cmd *ImportCmd) Run(ctx context.Context, args []string) error {
return nil
}

ref, err := cmd.findWorkspaceInstance(ctx, devsyConfig, devsyProHost)
ref, err := cmd.findWorkspaceInstance(ctx, devsyConfig, platformHost)
if err != nil {
return err
}
Expand Down Expand Up @@ -147,9 +147,9 @@ type workspaceInstanceRef struct {
func (cmd *ImportCmd) findWorkspaceInstance(
ctx context.Context,
devsyConfig *config.Config,
devsyProHost string,
platformHost string,
) (workspaceInstanceRef, error) {
provider, err := workspace.ProviderFromHost(ctx, devsyConfig, devsyProHost)
provider, err := workspace.ProviderFromHost(ctx, devsyConfig, platformHost)
if err != nil {
return workspaceInstanceRef{}, fmt.Errorf("resolve provider: %w", err)
}
Expand Down
2 changes: 1 addition & 1 deletion cmd/pro/workspace/list.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ func NewListCmd(globalFlags *flags.GlobalFlags) *cobra.Command {
Short: "List Workspaces",
Hidden: true,
RunE: func(cobraCmd *cobra.Command, args []string) error {
devsyConfig, providerConfig, err := proutil.FindProProvider(
devsyConfig, providerConfig, err := proutil.FindPlatformProvider(
cobraCmd.Context(),
cmd.Context,
cmd.Provider,
Expand Down
Loading
Loading