On 02.12.20 13:50, Mira Limbeck wrote: > We only added the format extension when it was not 'raw'. But on file level > storages we always require it. To fix this, always add the format > extension if the storage provides the 'path' property. > This is the same logic we use in create_disks for cloudinit disks. > > Signed-off-by: Mira Limbeck <m.limb...@proxmox.com> > --- > v2: > - added the same fix when restoring from backup >
clone seems to be fine, even if I slowly start to feel real hatred for those cloudinit disk edge cases, anyway, is there an actual reason why we need to restore that disk - isn't in gonna get regenerated on first start anyway? > PVE/QemuServer.pm | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) > > diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm > index 4989938..412113e 100644 > --- a/PVE/QemuServer.pm > +++ b/PVE/QemuServer.pm > @@ -5797,7 +5797,10 @@ my $restore_allocate_devices = sub { > my $name; > if ($d->{is_cloudinit}) { > $name = "vm-$vmid-cloudinit"; > - $name .= ".$d->{format}" if $d->{format} ne 'raw'; > + my $scfg = PVE::Storage::storage_config($storecfg, $storeid); > + if ($scfg->{path}) { > + $name .= ".$d->{format}"; > + } > } > > my $volid = PVE::Storage::vdisk_alloc( > @@ -6945,7 +6948,10 @@ sub clone_disk { > my $size = undef; > if (drive_is_cloudinit($drive)) { > $name = "vm-$newvmid-cloudinit"; > - $name .= ".$dst_format" if $dst_format ne 'raw'; > + my $scfg = PVE::Storage::storage_config($storecfg, $storeid); > + if ($scfg->{path}) { > + $name .= ".$dst_format"; > + } > $snapname = undef; > $size = PVE::QemuServer::Cloudinit::CLOUDINIT_DISK_SIZE; > } elsif ($drivename eq 'efidisk0') { > _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel