Skip to content

Commit

Permalink
Merge pull request #625 from meroxa/env_app_describe
Browse files Browse the repository at this point in the history
Env app describe and ls changes
  • Loading branch information
anna-cross committed Feb 6, 2023
2 parents 0919fc1 + 953a0af commit b0451a2
Show file tree
Hide file tree
Showing 8 changed files with 46 additions and 72 deletions.
14 changes: 7 additions & 7 deletions cmd/meroxa/root/apps/list_test.go
Expand Up @@ -45,23 +45,24 @@ func TestListAppsExecution(t *testing.T) {
shouldErrorOnEnvInfo func(string) bool
}{
{
desc: "With applications with no environment",
desc: "With applications with common environment",
apps: func() []*meroxa.Application {
aa := utils.GenerateApplication("")
return []*meroxa.Application{&aa}
},
shouldErrorOnEnvInfo: func(output string) bool {
return strings.Contains(output, "ENVIRONMENT")
return !strings.Contains(output, "ENVIRONMENT") && !strings.Contains(output, "common")
},
},
{
desc: "With applications in a common environment",
desc: "With applications in a private and common environment",
apps: func() []*meroxa.Application {
aa := utils.GenerateApplicationWithEnv("", meroxa.EnvironmentTypeCommon, "")
return []*meroxa.Application{&aa}
aa := utils.GenerateApplicationWithEnv("", meroxa.EnvironmentTypePrivate, meroxa.EnvironmentProviderAws)
aa2 := utils.GenerateApplication("")
return []*meroxa.Application{&aa, &aa2}
},
shouldErrorOnEnvInfo: func(output string) bool {
return strings.Contains(output, "ENVIRONMENT")
return !strings.Contains(output, "ENVIRONMENT")
},
},
{
Expand All @@ -85,7 +86,6 @@ func TestListAppsExecution(t *testing.T) {
},
},
}

for _, tc := range testCases {
t.Run(tc.desc, func(t *testing.T) {
logger := log.NewTestLogger()
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Expand Up @@ -13,7 +13,7 @@ require (
github.com/manifoldco/promptui v0.9.0
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-runewidth v0.0.13 // indirect
github.com/meroxa/meroxa-go v0.0.0-20230131021048-dbe05285bcfb
github.com/meroxa/meroxa-go v0.0.0-20230206193637-1e0718f112af
github.com/nirasan/go-oauth-pkce-code-verifier v0.0.0-20170819232839-0fbfe93532da
github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4
github.com/rivo/uniseg v0.2.0 // indirect
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Expand Up @@ -535,8 +535,8 @@ github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lL
github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4=
github.com/maxbrunsfeld/counterfeiter/v6 v6.2.2/go.mod h1:eD9eIE7cdwcMi9rYluz88Jz2VyhSmden33/aXg4oVIY=
github.com/meroxa/meroxa-go v0.0.0-20230131021048-dbe05285bcfb h1:wLtqo5j3e5EG6QmZT417ZRfG4Yp8D0djaGcmSJ545FM=
github.com/meroxa/meroxa-go v0.0.0-20230131021048-dbe05285bcfb/go.mod h1:OdTP4P/yHcTAqOE86kDXoTTLqC1Vj+/PFMG41kOcmhI=
github.com/meroxa/meroxa-go v0.0.0-20230206193637-1e0718f112af h1:9T99gOCvb+a3SHlpZ+rcdhdzXE00aWPQxx1wxSZDalk=
github.com/meroxa/meroxa-go v0.0.0-20230206193637-1e0718f112af/go.mod h1:OdTP4P/yHcTAqOE86kDXoTTLqC1Vj+/PFMG41kOcmhI=
github.com/meroxa/turbine-core v0.0.0-20230113145603-c7b1554653fa h1:addv/qyR+R6fqHBrJMf4sLp52BAfk4rf88f58aul1hw=
github.com/meroxa/turbine-core v0.0.0-20230113145603-c7b1554653fa/go.mod h1:zhJZykOx6X/L2OKNv8a2P0w7LrwXv3nLh0BLIzfrUh8=
github.com/meroxa/turbine-go v1.0.0 h1:5/mLoRbtdefpcC35fG3YZioz1qgrlaHOKh56n2hJ9lQ=
Expand Down
42 changes: 17 additions & 25 deletions utils/display/apps.go
Expand Up @@ -13,17 +13,11 @@ type AppExtendedConnector struct {
Logs string
}

func itShouldEnvInfo(env meroxa.ApplicationEnvironment) bool {
return env.Type != "" && env.Type != meroxa.EnvironmentTypeCommon
}

func AppsTable(apps []*meroxa.Application, hideHeaders bool) string {
if len(apps) == 0 {
return ""
}

withEnvironment := false

table := simpletable.New()

for _, app := range apps {
Expand All @@ -35,12 +29,12 @@ func AppsTable(apps []*meroxa.Application, hideHeaders bool) string {
{Align: simpletable.AlignLeft, Text: string(app.Status.State)},
}

env, err := app.Environment.GetNameOrUUID()

if err == nil && itShouldEnvInfo(app.Environment) {
withEnvironment = true
r = append(r, &simpletable.Cell{Align: simpletable.AlignLeft, Text: env})
if app.Environment != nil && app.Environment.Name != "" {
r = append(r, &simpletable.Cell{Align: simpletable.AlignLeft, Text: app.Environment.Name})
} else {
r = append(r, &simpletable.Cell{Align: simpletable.AlignLeft, Text: string(meroxa.EnvironmentTypeCommon)})
}

table.Body.Cells = append(table.Body.Cells, r)
}

Expand All @@ -51,10 +45,7 @@ func AppsTable(apps []*meroxa.Application, hideHeaders bool) string {
{Align: simpletable.AlignCenter, Text: "LANGUAGE"},
{Align: simpletable.AlignCenter, Text: "GIT SHA"},
{Align: simpletable.AlignCenter, Text: "STATE"},
}

if withEnvironment {
cells = append(cells, &simpletable.Cell{Align: simpletable.AlignCenter, Text: "ENVIRONMENT"})
{Align: simpletable.AlignCenter, Text: "ENVIRONMENT"},
}

table.Header = &simpletable.Header{
Expand Down Expand Up @@ -105,10 +96,16 @@ func AppTable(app *meroxa.Application) string {
if subTable != "" {
output += "\n" + subTable
}
subTable = appEnvironmentTable(app.Environment)
if subTable != "" {
output += "\n" + subTable

if app.Environment != nil {
if _, ok := app.Environment.GetNameOrUUID(); ok == nil {
subTable = appEnvironmentTable(app.Environment)
if subTable != "" {
output += "\n" + subTable
}
}
}

subTable = appFunctionsTable(app.Functions)
if subTable != "" {
output += "\n" + subTable
Expand Down Expand Up @@ -155,16 +152,11 @@ func appResourcesTable(resources []meroxa.ApplicationResource, connectors []mero
return subTable
}

func appEnvironmentTable(env meroxa.ApplicationEnvironment) string {
if !itShouldEnvInfo(env) {
return ""
}
func appEnvironmentTable(env *meroxa.EntityIdentifier) string {
subTable := "\tEnvironment\n"

subTable += fmt.Sprintf("\t %s\n", env.Name)
subTable += fmt.Sprintf("\t\t\t\t%5s:\t\t\t%s\n", "UUID", env.UUID)
subTable += fmt.Sprintf("\t\t\t\t %5s: %s\n", "Provider", env.Provider)
subTable += fmt.Sprintf("\t\t\t\t%5s:\t\t\t%s\n", "Type", env.Type)
subTable += fmt.Sprintf("\t\t%5s: %s\n", "UUID", env.UUID)

return subTable
}
Expand Down
10 changes: 0 additions & 10 deletions utils/display/apps_test.go
Expand Up @@ -58,16 +58,6 @@ func TestAppDescribeTable(t *testing.T) {
return strings.Contains(output, "Environment")
},
},
{
desc: "Application with a common environment",
app: func() *meroxa.Application {
a := utils.GenerateApplicationWithEnv("", meroxa.EnvironmentTypeCommon, "")
return &a
},
shouldErrorOnEnvInfo: func(output string) bool {
return strings.Contains(output, "Environment")
},
},
{
desc: "Application with in a private environment",
app: func() *meroxa.Application {
Expand Down
9 changes: 4 additions & 5 deletions utils/tests.go
Expand Up @@ -196,12 +196,11 @@ func GenerateApplication(state meroxa.ApplicationState) meroxa.Application {
func GenerateApplicationWithEnv(
state meroxa.ApplicationState,
envType meroxa.EnvironmentType,
provider meroxa.EnvironmentProvider) meroxa.Application {
provider meroxa.EnvironmentProvider,
) meroxa.Application {
app := GenerateApplication(state)
app.Environment = meroxa.ApplicationEnvironment{
EntityIdentifier: meroxa.EntityIdentifier{UUID: uuid.NewString(), Name: "my-env"},
Provider: provider,
Type: envType,
app.Environment = &meroxa.EntityIdentifier{
UUID: uuid.NewString(), Name: "my-env",
}
return app
}
Expand Down
35 changes: 14 additions & 21 deletions vendor/github.com/meroxa/meroxa-go/pkg/meroxa/application.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion vendor/modules.txt
Expand Up @@ -197,7 +197,7 @@ github.com/mattn/go-runewidth
# github.com/mattn/go-shellwords v1.0.12
## explicit; go 1.13
github.com/mattn/go-shellwords
# github.com/meroxa/meroxa-go v0.0.0-20230131021048-dbe05285bcfb
# github.com/meroxa/meroxa-go v0.0.0-20230206193637-1e0718f112af
## explicit; go 1.17
github.com/meroxa/meroxa-go/pkg/meroxa
github.com/meroxa/meroxa-go/pkg/mock
Expand Down

0 comments on commit b0451a2

Please sign in to comment.