diff --git a/cmd/labels.go b/cmd/labels.go index 8a32aac..2bab87a 100644 --- a/cmd/labels.go +++ b/cmd/labels.go @@ -9,6 +9,7 @@ import ( "fmt" "log" "os" + "strconv" "strings" "code.gitea.io/sdk/gitea" @@ -27,32 +28,32 @@ var CmdLabels = cli.Command{ CmdLabelUpdate, CmdLabelDelete, }, - Flags: []cli.Flag{ - cli.StringFlag{ - Name: "login, l", - Usage: "Indicate one login, optional when inside a gitea repository", - }, - cli.StringFlag{ - Name: "repo, r", - Usage: "Indicate one repository, optional when inside a gitea repository", - }, + Flags: append([]cli.Flag{ cli.StringFlag{ Name: "save, s", Usage: "Save all the labels as a file", }, - }, + }, AllDefaultFlags...), } func runLabels(ctx *cli.Context) error { login, owner, repo := initCommand() + headers := []string{ + "Index", + "Color", + "Name", + } + + var values [][]string + labels, err := login.Client().ListRepoLabels(owner, repo) if err != nil { log.Fatal(err) } if len(labels) == 0 { - fmt.Println("No Labels") + Output(outputValue, headers, values) return nil } @@ -69,8 +70,16 @@ func runLabels(ctx *cli.Context) error { } } else { for _, label := range labels { - fmt.Fprintf(os.Stdout, "%d #%s %s\n", label.ID, label.Color, label.Name) + values = append( + values, + []string{ + strconv.FormatInt(label.ID, 10), + label.Color, + label.Name, + }, + ) } + Output(outputValue, headers, values) } return nil diff --git a/main.go b/main.go index dea3829..8cd481f 100644 --- a/main.go +++ b/main.go @@ -44,7 +44,7 @@ func main() { app.EnableBashCompletion = true err := app.Run(os.Args) if err != nil { - log.Fatal(4, "Failed to run app with %s: %v", os.Args, err) + log.Fatalf("Failed to run app with %s: %v", os.Args, err) } }