From 87056e1821de5940c24d987fff04c9b3efe35bbe Mon Sep 17 00:00:00 2001 From: Thomas Lamprecht Date: Fri, 17 May 2019 10:53:30 +0200 Subject: [PATCH] follouwp: set is_cloudinit in drive to avoid always rechecking Signed-off-by: Thomas Lamprecht --- PVE/QemuServer.pm | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm index ecfd1ac..2822a81 100644 --- a/PVE/QemuServer.pm +++ b/PVE/QemuServer.pm @@ -6278,6 +6278,7 @@ sub restore_vma_archive { size => PVE::QemuServer::Cloudinit::CLOUDINIT_DISK_SIZE, file => $drive->{file}, # to make drive_is_cloudinit check possible name => "vm-$vmid-cloudinit", + is_cloudinit => 1, }; $virtdev_hash->{$virtdev} = $d; } @@ -6351,15 +6352,15 @@ sub restore_vma_archive { my $supported = grep { $_ eq $d->{format} } @$validFormats; $d->{format} = $defFormat if !$supported; - my $name = $d->{name}; - if ($name && $d->{format} ne 'raw') { - $name .= ".$d->{format}"; + my $name; + if ($d->{is_cloudinit}) { + $name = $d->{name}; + $name .= ".$d->{format}" if $d->{format} ne 'raw'; } my $volid = PVE::Storage::vdisk_alloc($cfg, $storeid, $vmid, $d->{format}, $name, $alloc_size); print STDERR "new volume ID is '$volid'\n"; $d->{volid} = $volid; - my $path = PVE::Storage::path($cfg, $volid); PVE::Storage::activate_volumes($cfg,[$volid]); @@ -6368,8 +6369,9 @@ sub restore_vma_archive { $write_zeros = 0; } - my $is_cloudinit = defined($d->{file}) && drive_is_cloudinit($d); - if (!$is_cloudinit) { + if (!$d->{is_cloudinit}) { + my $path = PVE::Storage::path($cfg, $volid); + print $fifofh "${map_opts}format=$d->{format}:${write_zeros}:$d->{devname}=$path\n"; print "map '$d->{devname}' to '$path' (write zeros = ${write_zeros})\n"; -- 2.39.2