From 9bdb07463c2a6bad02679f45213da7a220324127 Mon Sep 17 00:00:00 2001 From: cellarspoon Date: Thu, 30 Dec 2021 02:06:04 +0100 Subject: [PATCH] fix: handle filtered server list with sort --- cli/app/list.go | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/cli/app/list.go b/cli/app/list.go index 912d4f07..cf0fd648 100644 --- a/cli/app/list.go +++ b/cli/app/list.go @@ -200,9 +200,13 @@ can take some time. allStats[app.Server] = stats } + alreadySeen := make(map[string]bool) for _, app := range apps { - serverName := app.Server - serverStat := allStats[serverName] + if _, ok := alreadySeen[app.Server]; ok { + continue + } + + serverStat := allStats[app.Server] tableCol := []string{"recipe", "app name", "domain"} if status { @@ -224,7 +228,7 @@ can take some time. if status { fmt.Println(fmt.Sprintf( "server: %s | total apps: %v | versioned: %v | unversioned: %v | latest: %v | upgrade: %v", - serverName, + app.Server, serverStat.appCount, serverStat.versionCount, serverStat.unversionedCount, @@ -232,12 +236,14 @@ can take some time. serverStat.upgradeCount, )) } else { - fmt.Println(fmt.Sprintf("server: %s | total apps: %v", serverName, serverStat.appCount)) + fmt.Println(fmt.Sprintf("server: %s | total apps: %v", app.Server, serverStat.appCount)) } if len(allStats) > 1 { fmt.Println() // newline separator for multiple servers } + + alreadySeen[app.Server] = true } if len(allStats) > 1 {