()
| 180 | } |
| 181 | |
| 182 | func (r *RootCmd) licenseDelete() *serpent.Command { |
| 183 | cmd := &serpent.Command{ |
| 184 | Use: "delete <id>", |
| 185 | Short: "Delete license by ID", |
| 186 | Aliases: []string{"del"}, |
| 187 | Middleware: serpent.Chain( |
| 188 | serpent.RequireNArgs(1), |
| 189 | ), |
| 190 | Handler: func(inv *serpent.Invocation) error { |
| 191 | client, err := r.InitClient(inv) |
| 192 | if err != nil { |
| 193 | return err |
| 194 | } |
| 195 | |
| 196 | id, err := strconv.ParseInt(inv.Args[0], 10, 32) |
| 197 | if err != nil { |
| 198 | return xerrors.Errorf("license ID must be an integer: %s", inv.Args[0]) |
| 199 | } |
| 200 | err = client.DeleteLicense(inv.Context(), int32(id)) |
| 201 | if err != nil { |
| 202 | return err |
| 203 | } |
| 204 | _, _ = fmt.Fprintf(inv.Stdout, "License with ID %d deleted\n", id) |
| 205 | return nil |
| 206 | }, |
| 207 | } |
| 208 | return cmd |
| 209 | } |
no test coverage detected