From f5ab2a55d1f758ad200459ac1dc7730afba5b02b Mon Sep 17 00:00:00 2001
From: Markus Scheidgen <markus.scheidgen@gmail.com>
Date: Thu, 1 Aug 2019 18:33:22 +0200
Subject: [PATCH] Added more commands to GUI.

---
 gui/src/components/api.js             |  2 +-
 gui/src/components/uploads/Uploads.js | 14 ++++++++++++--
 nomad/api/upload.py                   |  4 +++-
 3 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/gui/src/components/api.js b/gui/src/components/api.js
index aaaffeef31..c08f6815cb 100644
--- a/gui/src/components/api.js
+++ b/gui/src/components/api.js
@@ -367,7 +367,7 @@ class Api {
     return this.swaggerPromise
       .then(client => client.apis.uploads.get_upload_command())
       .catch(this.handleApiError)
-      .then(response => response.body.upload_command)
+      .then(response => response.body)
       .finally(this.onFinishLoading)
   }
 }
diff --git a/gui/src/components/uploads/Uploads.js b/gui/src/components/uploads/Uploads.js
index ab07c9bd81..8a8d285b11 100644
--- a/gui/src/components/uploads/Uploads.js
+++ b/gui/src/components/uploads/Uploads.js
@@ -93,7 +93,11 @@ class Uploads extends React.Component {
     publishedUploads: null,
     publishedUploadsPage: 1,
     publishedUploadsTotal: 0,
-    uploadCommand: 'loading ...',
+    uploadCommand: {
+      upload_command: 'loading ...',
+      upload_tar_command: 'loading ...',
+      upload_progress_command: 'loading ...'
+    },
     selectedUnpublishedUploads: [],
     showPublishDialog: false
   }
@@ -389,7 +393,7 @@ class Uploads extends React.Component {
             <div className={classes.commandMarkup}>
               <Markdown>{`
                 \`\`\`
-                  ${uploadCommand}
+                  ${uploadCommand.upload_command}
                 \`\`\`
               `}</Markdown>
             </div>
@@ -403,6 +407,12 @@ class Uploads extends React.Component {
             </CopyToClipboard>
           </div>
 
+          <Help cookie="moreUploadCommandHelp">{`
+            The above command can be modified. To see progress on large files, use
+            \`${uploadCommand.upload_progress_command}\`. To
+            \`tar\` and upload in one command, use \`${uploadCommand.upload_tar_command}\`.
+          `}</Help>
+
           {this.renderUnpublishedUploads()}
           {this.renderPublishedUploads()}
         </Agree>
diff --git a/nomad/api/upload.py b/nomad/api/upload.py
index 055c2e7667..7686a4bcc4 100644
--- a/nomad/api/upload.py
+++ b/nomad/api/upload.py
@@ -513,7 +513,9 @@ class UploadResource(Resource):
 
 upload_command_model = api.model('UploadCommand', {
     'upload_url': fields.Url,
-    'upload_command': fields.String
+    'upload_command': fields.String,
+    'upload_progress_command': fields.String,
+    'upload_tar_command': fields.String
 })
 
 
-- 
GitLab