applied qemu-server patches except 11 and 14-16, see comments on indivudal patches.
some unrelated but possibly fix-able as followup things I noticed: - cloning a running VM with an EFI disk fails, the EFI disk is not mirrorable (so we need another check like for TPM state?) - cancelling a running clone doesn't cleanup properly (stops with trying to aquire lock and leaves the target VM locked & existing) On March 9, 2022 11:09 am, Fabian Ebner wrote: > Extend qm importdisk/importovf functionality to the API. > > Changes from v11 (after an off-list discussion with Fabian G.): > * Avoid confusing $dest->{conf} parameter for clone_disk(). > * Require relevant parameters to be set explicitly for EFI/TPM. > * Base calculation of EFI vars size on passed-in parameters. > > Changes from v10: > * Add fix for device unplug issue (patch #1). > * Add fixes related to calling create_disks() (patches #2 #3). > * Refactor clone_disk() in preparation to re-use it for import > (patches #4 #5 #6). > * Add patch to print the newly allocated drive (patch #14). > * Switch to using clone_disk for PVE-managed volumes and check for > VM.Clone in the permission check if there is an owner ID. > * Require <storeid>:0 syntax when using import-from. Allowing > other values than 0 for the size would be confusing, because > with import-from that size is never used (the size of the source > image is). > * Avoid making all foreach_volume iterators parse with the > extended schema. Instead, provide a custom iterator for the > places where it's actually required. > > Still missing GUI integration for import from ovf, but that will be it's > own series. > > Older discussion: > https://lists.proxmox.com/pipermail/pve-devel/2022-January/051379.html > > > qemu-server: > > Dominic Jäger (1): > api: support VM disk import > > Fabian Ebner (15): > device unplug: verify that unplugging scsi disk completed > api: create disks: always activate/update size when attaching existing > volume > api: update: pass correct config when creating disks > clone disk: remove check for min QEMU version 2.7 > clone disk: group source and target parameters > clone disk: pass in efi vars size rather than config > clone disk: allow cloning from an unused or unreferenced disk > efivars size: allow overriding efidisk parameter > schema: add pve-volume-id-or-absolute-path > parse ovf: untaint path when calling file_size_info > api: add endpoint for parsing .ovf files > image convert: allow block device as source > api: factor out check/cleanup for drive params > schema: drive: use separate schema when disk allocation is possible > api: update vm: print drive string for newly allocated/imported drives > > PVE/API2/Qemu.pm | 381 +++++++++++++++++++++++++++-------- > PVE/API2/Qemu/Makefile | 2 +- > PVE/API2/Qemu/OVF.pm | 55 +++++ > PVE/QemuServer.pm | 106 +++++++--- > PVE/QemuServer/Drive.pm | 94 ++++++--- > PVE/QemuServer/ImportDisk.pm | 2 +- > PVE/QemuServer/OVF.pm | 9 +- > 7 files changed, 508 insertions(+), 141 deletions(-) > create mode 100644 PVE/API2/Qemu/OVF.pm > > > manager: > > Fabian Ebner (1): > api: nodes: add readovf endpoint > > PVE/API2/Nodes.pm | 7 +++++++ > 1 file changed, 7 insertions(+) > > -- > 2.30.2 > > > > _______________________________________________ > pve-devel mailing list > pve-devel@lists.proxmox.com > https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel > _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel