From 0fc03fc18d05170331b5ee263687e040f428992f Mon Sep 17 00:00:00 2001 From: Fiona Ebner Date: Mon, 20 Jan 2025 16:57:05 +0100 Subject: [PATCH] api: fix ova live import by using correct format for source image Commit c8ed1ac2 ("api: create disks: live import: use format from storage layer") broke live import from an OVA containing a disk, because a combined format like 'ova+vmdk' was used for the live-import disk mapping, leading to failure: > invalid format 'ova+vmdk' for 'scsi0' mapping There was also an informational message about the confusion earlier: > file_size_info: '/mnt/pve/dir/images/135/vm-135-disk-0.vmdk': \ > falling back to 'raw' from unknown format 'ova+vmdk Fixes: c8ed1ac2 ("api: create disks: live import: use format from storage layer") Signed-off-by: Fiona Ebner --- PVE/API2/Qemu.pm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/PVE/API2/Qemu.pm b/PVE/API2/Qemu.pm index 45fe6ea6..295260e7 100644 --- a/PVE/API2/Qemu.pm +++ b/PVE/API2/Qemu.pm @@ -29,7 +29,7 @@ use PVE::QemuConfig; use PVE::QemuServer; use PVE::QemuServer::Cloudinit; use PVE::QemuServer::CPUConfig; -use PVE::QemuServer::Drive qw(checked_parse_volname); +use PVE::QemuServer::Drive qw(checked_volume_format checked_parse_volname); use PVE::QemuServer::Helpers; use PVE::QemuServer::ImportDisk; use PVE::QemuServer::Monitor qw(mon_cmd); @@ -450,6 +450,7 @@ my sub create_disks : prototype($$$$$$$$$$$) { print "finished extracting to $extracted_volid\n"; push @$vollist, $extracted_volid; $source = $extracted_volid; + $source_format = checked_volume_format($storecfg, $source); my (undef, undef, undef, $parent) = PVE::Storage::volume_size_info($storecfg, $source);