From 95bcf0c080259062c908b48d452d5b4a096d7008 Mon Sep 17 00:00:00 2001 From: Julien Fontanet Date: Thu, 4 Apr 2019 10:10:45 +0200 Subject: [PATCH] fix(xo-web/vms/import): various fixes (#4118) - dont swallow `importVm` error - `importVms`: display errors on console - dont redirect on failure --- packages/xo-web/src/common/xo/index.js | 9 ++++++--- packages/xo-web/src/xo-app/vm-import/index.js | 4 +++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/xo-web/src/common/xo/index.js b/packages/xo-web/src/common/xo/index.js index 109f8d376..4258bf2f3 100644 --- a/packages/xo-web/src/common/xo/index.js +++ b/packages/xo-web/src/common/xo/index.js @@ -1388,8 +1388,9 @@ export const importVm = (file, type = 'xva', data = undefined, sr) => { success(_('vmImportSuccess'), name) return res.json().then(body => body.result) }) - .catch(() => { + .catch(err => { error(_('vmImportFailed'), name) + throw err }) ) } @@ -1429,9 +1430,11 @@ export const importVdi = async vdi => { export const importVms = (vms, sr) => Promise.all( map(vms, ({ file, type, data }) => - importVm(file, type, data, sr).catch(noop) + importVm(file, type, data, sr).catch(error => { + console.warn('importVms', file.name, error) + }) ) - ) + ).then(ids => ids.filter(_ => _ !== undefined)) import ExportVmModalBody from './export-vm-modal' // eslint-disable-line import/first export const exportVm = vm => diff --git a/packages/xo-web/src/xo-app/vm-import/index.js b/packages/xo-web/src/xo-app/vm-import/index.js index 65df47a80..4e8e76ba4 100644 --- a/packages/xo-web/src/xo-app/vm-import/index.js +++ b/packages/xo-web/src/xo-app/vm-import/index.js @@ -237,7 +237,9 @@ const parseFile = async (file, type, func) => { } const getRedirectionUrl = vms => - vms.length === 1 + vms.length === 0 + ? undefined // no redirect + : vms.length === 1 ? `/vms/${vms[0]}` : `/home?s=${encodeURIComponent(`id:|(${vms.join(' ')})`)}&t=VM`