[pve-devel] [PATCH storage/manager v6] allow down/upload & import of images in the web UI

Dominik Csapak d.csapak at proxmox.com
Mon Apr 7 12:13:04 CEST 2025


most of the building blocks are already there:
* we can have image files in an import storage
* we can import image files via the api from such a storage

this series fills in the missing bits & pieces:
* allow uploading/downloading image files into an import storage via the webgui
* adding the possibility to select such a file when creating a vm/disk

One minor "ugliness": when switching between import on/off, the target
storage selector resets. This is normally intended by the component,
since it's most often only disabled when it's still visible, except here
in this case.

If this is a blocker, I can of course add an option to the selector
to not do this here, but IMHO this is a rather odd use case anyway,
so I opted for not handling that explicitely.

changes from v5:
* new patch that renames isOva to is_ova
* rename imageFormat to image_format
* don't use (unnecessary) second regex
* add hint to ui about storage location
* fix bug with format doubly appended

changes from v4:
* add an 'extension alias' mechanism for the upload window,
  to have separate extensions to validate for the file selector
  and the file name field (thanks for noticing @Filip)

changes from v3:
* allow raw (.raw, .img) and vmdk files too
* automatically append '.raw' for '.img' files

changes from v2:
* fix correctly unset 'import-from' in wizard when going to summary,
  back to disk, unselecting import, then going forward to the summary
  again
* fixed an issue with the file selector being mistakenly disabled

changes from v1:
* fixed an issue where the file selector would be hidden but invalid

pve-storage:

Dominik Csapak (2):
  api: rename 'isOva' to 'is_ova' to adhere to style guide
  import: allow upload of guest images files into import storage

 src/PVE/API2/Storage/Status.pm | 35 +++++++++++++++++++++++++---------
 src/PVE/Storage.pm             |  2 +-
 2 files changed, 27 insertions(+), 10 deletions(-)

pve-manager:

Dominik Csapak (4):
  ui: storage content: allow upload of guest images for import type
  ui: form: file selector: allow optional filter
  ui: qemu hd edit: allow importing a disk from the import storage
  ui: upload window: show hint about upload storage location

 www/manager6/form/FileSelector.js           | 10 +++
 www/manager6/qemu/HDEdit.js                 | 70 ++++++++++++++++++++-
 www/manager6/window/DownloadUrlToStorage.js |  4 ++
 www/manager6/window/UploadToStorage.js      | 29 +++++++--
 4 files changed, 108 insertions(+), 5 deletions(-)

-- 
2.39.5





More information about the pve-devel mailing list