summaryrefslogtreecommitdiffstats
path: root/cmd/mattermost/commands/command.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/mattermost/commands/command.go')
-rw-r--r--cmd/mattermost/commands/command.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/cmd/mattermost/commands/command.go b/cmd/mattermost/commands/command.go
index 63f18bed6..bd0bed1fd 100644
--- a/cmd/mattermost/commands/command.go
+++ b/cmd/mattermost/commands/command.go
@@ -44,6 +44,15 @@ var CommandListCmd = &cobra.Command{
RunE: listCommandCmdF,
}
+var CommandDeleteCmd = &cobra.Command{
+ Use: "delete",
+ Short: "Delete a slash command",
+ Long: `Delete a slash command. Commands can be specified by command ID.`,
+ Example: ` command delete commandID`,
+ Args: cobra.MinimumNArgs(1),
+ RunE: deleteCommandCmdF,
+}
+
func init() {
CommandCreateCmd.Flags().String("title", "", "Command Title")
CommandCreateCmd.Flags().String("description", "", "Command Description")
@@ -64,6 +73,7 @@ func init() {
CommandCreateCmd,
CommandMoveCmd,
CommandListCmd,
+ CommandDeleteCmd,
)
RootCmd.AddCommand(CommandCmd)
}
@@ -204,3 +214,21 @@ func listCommandCmdF(command *cobra.Command, args []string) error {
}
return nil
}
+
+func deleteCommandCmdF(command *cobra.Command, args []string) error {
+ a, err := InitDBCommandContextCobra(command)
+ if err != nil {
+ return err
+ }
+ defer a.Shutdown()
+
+ commandID := args[0]
+
+ deleteErr := a.DeleteCommand(commandID)
+ if deleteErr != nil {
+ CommandPrintErrorln("Unable to delete command '" + commandID + "' error: " + deleteErr.Error())
+ return deleteErr
+ }
+ CommandPrettyPrintln("Deleted command '" + commandID + "'")
+ return nil
+}