by allowing 'qcow2', 'vmdk', 'raw' and 'img' files to upload.
Since we expect raw images to have a '.raw' extension, append that for
'.img' files.

partially fixes #2424

Signed-off-by: Dominik Csapak <d.csa...@proxmox.com>
---
changes from v3:
* also allow vmdk/raw
* rename '.img' files to '.raw'

 www/manager6/window/DownloadUrlToStorage.js | 4 ++++
 www/manager6/window/UploadToStorage.js      | 7 +++++--
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/www/manager6/window/DownloadUrlToStorage.js 
b/www/manager6/window/DownloadUrlToStorage.js
index 3ac80ac9..aabc9d3c 100644
--- a/www/manager6/window/DownloadUrlToStorage.js
+++ b/www/manager6/window/DownloadUrlToStorage.js
@@ -89,6 +89,10 @@ Ext.define('PVE.window.DownloadUrlToStorage', {
                            filename = matches[1];
                            compression = matches[2].toLowerCase();
                        }
+                   } else if (view.content === 'import') {
+                       if (filename.endsWith('.img')) {
+                           filename += '.raw';
+                       }
                    }
 
                    view.setValues({
diff --git a/www/manager6/window/UploadToStorage.js 
b/www/manager6/window/UploadToStorage.js
index cdf548a8..0dad6333 100644
--- a/www/manager6/window/UploadToStorage.js
+++ b/www/manager6/window/UploadToStorage.js
@@ -9,7 +9,7 @@ Ext.define('PVE.window.UploadToStorage', {
     title: gettext('Upload'),
 
     acceptedExtensions: {
-       'import': ['.ova'],
+       'import': ['.ova', '.qcow2', '.raw', '.vmdk', '.img'],
        iso: ['.img', '.iso'],
        vztmpl: ['.tar.gz', '.tar.xz', '.tar.zst'],
     },
@@ -135,7 +135,10 @@ Ext.define('PVE.window.UploadToStorage', {
 
        fileChange: function(input) {
            const vm = this.getViewModel();
-           const name = input.value.replace(/^.*(\/|\\)/, '');
+           let name = input.value.replace(/^.*(\/|\\)/, '');
+           if (name.endsWith('.img')) {
+               name += '.raw';
+           }
            const fileInput = input.fileInputEl.dom;
            vm.set('filename', name);
            vm.set('size', (fileInput.files[0] && 
Proxmox.Utils.format_size(fileInput.files[0].size)) || '-');
-- 
2.39.5



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to