diff --git a/cmd/convox/scale.go b/cmd/convox/scale.go index eb6bbbbae6..4f01684b40 100644 --- a/cmd/convox/scale.go +++ b/cmd/convox/scale.go @@ -2,8 +2,6 @@ package main import ( "fmt" - "strconv" - "strings" "github.com/codegangsta/cli" "github.com/convox/rack/cmd/convox/stdcli" @@ -69,16 +67,23 @@ func displayFormation(c *cli.Context, app string) { return } - t := stdcli.NewTable("NAME", "COUNT", "MEMORY", "PORTS") + pss, err := rackClient(c).GetProcesses(app, false) - for _, f := range formation { - ports := []string{} + if err != nil { + stdcli.Error(err) + return + } - for _, p := range f.Ports { - ports = append(ports, strconv.Itoa(p)) - } + running := map[string]int{} - t.AddRow(f.Name, fmt.Sprintf("%d", f.Count), fmt.Sprintf("%d", f.Memory), strings.Join(ports, " ")) + for _, ps := range pss { + running[ps.Name] = running[ps.Name] + 1 + } + + t := stdcli.NewTable("NAME", "DESIRED", "RUNNING", "MEMORY") + + for _, f := range formation { + t.AddRow(f.Name, fmt.Sprintf("%d", f.Count), fmt.Sprintf("%d", running[f.Name]), fmt.Sprintf("%d", f.Memory)) } t.Print()