From 11cbb597471127c1b29e78e6cad0a1a4d93ea24c Mon Sep 17 00:00:00 2001 From: Christopher Speller Date: Thu, 17 May 2018 12:40:40 -0700 Subject: Renaming platform binary to mattermost. (#8801) --- cmd/commands/message_export.go | 82 ------------------------------------------ 1 file changed, 82 deletions(-) delete mode 100644 cmd/commands/message_export.go (limited to 'cmd/commands/message_export.go') diff --git a/cmd/commands/message_export.go b/cmd/commands/message_export.go deleted file mode 100644 index 30d9cb122..000000000 --- a/cmd/commands/message_export.go +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved. -// See License.txt for license information. - -package commands - -import ( - "errors" - - "context" - - "time" - - "github.com/mattermost/mattermost-server/cmd" - "github.com/mattermost/mattermost-server/model" - "github.com/spf13/cobra" -) - -var MessageExportCmd = &cobra.Command{ - Use: "export", - Short: "Export data from Mattermost", - Long: "Export data from Mattermost in a format suitable for import into a third-party application", - Example: "export --format=actiance --exportFrom=12345", - RunE: messageExportCmdF, -} - -func init() { - MessageExportCmd.Flags().String("format", "actiance", "The format to export data in") - MessageExportCmd.Flags().Int64("exportFrom", -1, "The timestamp of the earliest post to export, expressed in seconds since the unix epoch.") - MessageExportCmd.Flags().Int("timeoutSeconds", -1, "The maximum number of seconds to wait for the job to complete before timing out.") - cmd.RootCmd.AddCommand(MessageExportCmd) -} - -func messageExportCmdF(command *cobra.Command, args []string) error { - a, err := cmd.InitDBCommandContextCobra(command) - if err != nil { - return err - } - defer a.Shutdown() - - if !*a.Config().MessageExportSettings.EnableExport { - return errors.New("ERROR: The message export feature is not enabled") - } - - // for now, format is hard-coded to actiance. In time, we'll have to support other formats and inject them into job data - if format, err := command.Flags().GetString("format"); err != nil { - return errors.New("format flag error") - } else if format != "actiance" { - return errors.New("unsupported export format") - } - - startTime, err := command.Flags().GetInt64("exportFrom") - if err != nil { - return errors.New("exportFrom flag error") - } else if startTime < 0 { - return errors.New("exportFrom must be a positive integer") - } - - timeoutSeconds, err := command.Flags().GetInt("timeoutSeconds") - if err != nil { - return errors.New("timeoutSeconds error") - } else if timeoutSeconds < 0 { - return errors.New("timeoutSeconds must be a positive integer") - } - - if messageExportI := a.MessageExport; messageExportI != nil { - ctx := context.Background() - if timeoutSeconds > 0 { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, time.Second*time.Duration(timeoutSeconds)) - defer cancel() - } - - job, err := messageExportI.StartSynchronizeJob(ctx, startTime) - if err != nil || job.Status == model.JOB_STATUS_ERROR || job.Status == model.JOB_STATUS_CANCELED { - cmd.CommandPrintErrorln("ERROR: Message export job failed. Please check the server logs") - } else { - cmd.CommandPrettyPrintln("SUCCESS: Message export job complete") - } - } - - return nil -} -- cgit v1.2.3-1-g7c22