diff --git a/cli/app/list.go b/cli/app/list.go index 081913dc..e9d476da 100644 --- a/cli/app/list.go +++ b/cli/app/list.go @@ -104,7 +104,7 @@ can take some time. } } - statuses, err = config.GetAppStatuses(appFiles) + statuses, err = config.GetAppStatuses(appFiles, internal.MachineReadable) if err != nil { logrus.Fatal(err) } diff --git a/pkg/config/app.go b/pkg/config/app.go index 85793b8e..2ba2143d 100644 --- a/pkg/config/app.go +++ b/pkg/config/app.go @@ -7,6 +7,8 @@ import ( "path" "strings" + "github.com/schollz/progressbar/v3" + "coopcloud.tech/abra/pkg/formatter" "coopcloud.tech/abra/pkg/upstream/convert" loader "coopcloud.tech/abra/pkg/upstream/stack" @@ -343,7 +345,7 @@ func SanitiseAppName(name string) string { } // GetAppStatuses queries servers to check the deployment status of given apps -func GetAppStatuses(appFiles AppFiles) (map[string]map[string]string, error) { +func GetAppStatuses(appFiles AppFiles, MachineReadable bool) (map[string]map[string]string, error) { statuses := make(map[string]map[string]string) var unique []string @@ -355,12 +357,18 @@ func GetAppStatuses(appFiles AppFiles) (map[string]map[string]string, error) { } } - bar := formatter.CreateProgressbar(len(servers), "querying remote servers...") + var bar *progressbar.ProgressBar + + if !MachineReadable { + bar = formatter.CreateProgressbar(len(servers), "querying remote servers...") + } ch := make(chan stack.StackStatus, len(servers)) for server := range servers { go func(s string) { ch <- stack.GetAllDeployedServices(s) - bar.Add(1) + if !MachineReadable { + bar.Add(1) + } }(server) }