1package commands
2
3import (
4 "fmt"
5
6 "github.com/spf13/cobra"
7)
8
9type rmOptions struct {
10}
11
12func newRmCommand() *cobra.Command {
13 env := newEnv()
14 options := rmOptions{}
15
16 cmd := &cobra.Command{
17 Use: "rm <id>",
18 Short: "Remove an existing bug.",
19 PreRunE: loadBackendEnsureUser(env),
20 PostRunE: closeBackend(env),
21 RunE: func(cmd *cobra.Command, args []string) error {
22 return runRm(env, options, args)
23 },
24 }
25
26 flags := cmd.Flags()
27 flags.SortFlags = false
28
29 return cmd
30}
31
32func runRm(env *Env, opts rmOptions, args []string) error {
33 if len(args) == 0 {
34 return fmt.Errorf("you must provide a bug id prefix to remove")
35 }
36
37 err := env.backend.RemoveBug(args[0])
38 if err != nil {
39 return err
40 }
41
42 env.out.Printf("bug %s removed\n", args[0])
43
44 return nil
45}