summaryrefslogtreecommitdiff
path: root/cmd/podman/pods/stats.go
diff options
context:
space:
mode:
authorJhon Honce <jhonce@redhat.com>2021-06-15 10:08:34 -0700
committerJhon Honce <jhonce@redhat.com>2021-06-16 16:53:48 -0700
commitbd9987239dae148bfd3eea8540d21ae7715faff7 (patch)
tree9acb4f44f6d3410d2f7bf78aa9a1621f73bef449 /cmd/podman/pods/stats.go
parente73a7dadac5a8c74c3a020993de94ed88fd6a04e (diff)
downloadpodman-bd9987239dae148bfd3eea8540d21ae7715faff7.tar.gz
podman-bd9987239dae148bfd3eea8540d21ae7715faff7.tar.bz2
podman-bd9987239dae148bfd3eea8540d21ae7715faff7.zip
Scrub podman commands to use report package
Refactor podman commands that have drifted from using c/common report pkg. Report pkg is needed to implement go template functions. Removed obsolete code from podman which exists in c/common. Latest template library added default newlines and method to remove them. Incorporated needed changes in c/common PR below. Depends on https://github.com/containers/common/pull/624 Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1855983 Signed-off-by: Jhon Honce <jhonce@redhat.com>
Diffstat (limited to 'cmd/podman/pods/stats.go')
-rw-r--r--cmd/podman/pods/stats.go23
1 files changed, 14 insertions, 9 deletions
diff --git a/cmd/podman/pods/stats.go b/cmd/podman/pods/stats.go
index 057b3dead..ba2c1495b 100644
--- a/cmd/podman/pods/stats.go
+++ b/cmd/podman/pods/stats.go
@@ -4,14 +4,11 @@ import (
"context"
"fmt"
"os"
- "text/tabwriter"
- "text/template"
"time"
"github.com/buger/goterm"
"github.com/containers/common/pkg/report"
"github.com/containers/podman/v3/cmd/podman/common"
- "github.com/containers/podman/v3/cmd/podman/parse"
"github.com/containers/podman/v3/cmd/podman/registry"
"github.com/containers/podman/v3/cmd/podman/validate"
"github.com/containers/podman/v3/pkg/domain/entities"
@@ -123,8 +120,12 @@ func printJSONPodStats(stats []*entities.PodStatsReport) error {
return nil
}
-func printPodStatsLines(stats []*entities.PodStatsReport) {
- w := tabwriter.NewWriter(os.Stdout, 0, 0, 2, ' ', 0)
+func printPodStatsLines(stats []*entities.PodStatsReport) error {
+ w, err := report.NewWriterDefault(os.Stdout)
+ if err != nil {
+ return err
+ }
+
outFormat := "%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n"
fmt.Fprintf(w, outFormat, "POD", "CID", "NAME", "CPU %", "MEM USAGE/ LIMIT", "MEM %", "NET IO", "BLOCK IO", "PIDS")
if len(stats) == 0 {
@@ -134,7 +135,7 @@ func printPodStatsLines(stats []*entities.PodStatsReport) {
fmt.Fprintf(w, outFormat, i.Pod, i.CID, i.Name, i.CPU, i.MemUsage, i.Mem, i.NetIO, i.BlockIO, i.PIDS)
}
}
- w.Flush()
+ return w.Flush()
}
func printFormattedPodStatsLines(headerNames []map[string]string, row string, stats []*entities.PodStatsReport) error {
@@ -142,13 +143,17 @@ func printFormattedPodStatsLines(headerNames []map[string]string, row string, st
return nil
}
- row = parse.EnforceRange(row)
+ row = report.EnforceRange(row)
+
+ tmpl, err := report.NewTemplate("stats").Parse(row)
+ if err != nil {
+ return err
+ }
- tmpl, err := template.New("pod stats").Parse(row)
+ w, err := report.NewWriterDefault(os.Stdout)
if err != nil {
return err
}
- w := tabwriter.NewWriter(os.Stdout, 0, 0, 3, ' ', 0)
defer w.Flush()
if err := tmpl.Execute(w, headerNames); err != nil {