diff options
author | Michael Muré <batolettre@gmail.com> | 2022-11-22 14:53:15 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-22 14:53:15 +0100 |
commit | 70bd7377b6362127794f3a6198dd2c63863025fc (patch) | |
tree | e159372673104ade1f15ddc1a84aa9da93e93552 /commands/label.go | |
parent | a3fa445a9c76631c4cd16f93e1c1c68a954adef7 (diff) | |
parent | acc9a6f3a6df2961c3ae44352216d915cb9b5315 (diff) | |
download | git-bug-70bd7377b6362127794f3a6198dd2c63863025fc.tar.gz |
Merge pull request #870 from MichaelMure/cli-reorg
commands: reorg into different packages
Diffstat (limited to 'commands/label.go')
-rw-r--r-- | commands/label.go | 35 |
1 files changed, 14 insertions, 21 deletions
diff --git a/commands/label.go b/commands/label.go index ff4d0151..70090d26 100644 --- a/commands/label.go +++ b/commands/label.go @@ -3,39 +3,32 @@ package commands import ( "github.com/spf13/cobra" - _select "github.com/MichaelMure/git-bug/commands/select" + "github.com/MichaelMure/git-bug/commands/execenv" ) func newLabelCommand() *cobra.Command { - env := newEnv() + env := execenv.NewEnv() cmd := &cobra.Command{ - Use: "label [ID]", - Short: "Display, add or remove labels to/from a bug.", - PreRunE: loadBackend(env), - RunE: closeBackend(env, func(cmd *cobra.Command, args []string) error { - return runLabel(env, args) + Use: "label", + Short: "List valid labels", + Long: `List valid labels. + +Note: in the future, a proper label policy could be implemented where valid labels are defined in a configuration file. Until that, the default behavior is to return the list of labels already used.`, + PreRunE: execenv.LoadBackend(env), + RunE: execenv.CloseBackend(env, func(cmd *cobra.Command, args []string) error { + return runLabel(env) }), - ValidArgsFunction: completeBug(env), } - cmd.AddCommand(newLabelAddCommand()) - cmd.AddCommand(newLabelLsCommand()) - cmd.AddCommand(newLabelRmCommand()) - return cmd } -func runLabel(env *Env, args []string) error { - b, _, err := _select.ResolveBug(env.backend, args) - if err != nil { - return err - } - - snap := b.Snapshot() +func runLabel(env *execenv.Env) error { + labels := env.Backend.ValidLabels() - for _, l := range snap.Labels { - env.out.Println(l) + for _, l := range labels { + env.Out.Println(l) } return nil |