cmd/ejobs: add -user option to ejobs list - Enables filtering by username in list command. - Example: ejobs list -user=ethanalee. Change-Id: Ic945ff31ecb6dca6e331be0bfd38cd2a77fff01b Reviewed-on: https://go-review.googlesource.com/c/pkgsite-metrics/+/697835 Auto-Submit: Ethan Lee <ethanalee@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Neal Patel <nealpatel@google.com>
diff --git a/cmd/ejobs/main.go b/cmd/ejobs/main.go index cf3acd6..b98e5cb 100644 --- a/cmd/ejobs/main.go +++ b/cmd/ejobs/main.go
@@ -54,12 +54,17 @@ force bool // for results errs bool // for results outfile string // for results + userFilter string // for list ) var commands = []command{ - {"list", "", + {"list", "[-user USERNAME]", "list jobs", - doList, nil}, + doList, + func(fs *flag.FlagSet) { + fs.StringVar(&userFilter, "user", "", "filter jobs by user") + }, + }, {"show", "JOBID...", "display information about jobs in the last 7 days", doShow, nil}, @@ -208,6 +213,9 @@ tw := tabwriter.NewWriter(os.Stdout, 2, 8, 1, ' ', 0) fmt.Fprintf(tw, "ID\tUser\tStart Time\tStarted\tFinished\tTotal\tCanceled\n") for _, j := range *joblist { + if userFilter != "" && j.User != userFilter { + continue + } if j.StartedAt.After(weekBefore) { fmt.Fprintf(tw, "%s\t%s\t%s\t%d\t%d\t%d\t%t\n", j.ID(), j.User, j.StartedAt.Format(time.RFC3339),