]> git.proxmox.com Git - qemu-server.git/commitdiff
template_create : add template:1 option.
authorAlexandre Derumier <aderumier@odiso.com>
Thu, 18 Apr 2013 15:05:31 +0000 (17:05 +0200)
committerDietmar Maurer <dietmar@proxmox.com>
Mon, 22 Apr 2013 04:59:18 +0000 (06:59 +0200)
Also allow template create of non base-xxx renamable storage

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
PVE/QemuServer.pm

index 8e0a378a3f8e485734c4c4dd4478dcfaca87efe9..afc9976df670bccffe7aa510a5ede24d178292f2 100644 (file)
@@ -4454,17 +4454,8 @@ sub template_create {
        return if $disk && $ds ne $disk;
 
        my $volid = $drive->{file};
-       die "volume '$volid' does not support template/clone\n" 
-           if !PVE::Storage::volume_has_feature($storecfg, 'template', $volid);
-    });
+       return if !PVE::Storage::volume_has_feature($storecfg, 'template', $volid);
 
-    foreach_drive($conf, sub {
-       my ($ds, $drive) = @_;
-
-       return if drive_is_cdrom($drive);
-       return if $disk && $ds ne $disk;
-
-       my $volid = $drive->{file};
        my $voliddst = PVE::Storage::vdisk_create_base($storecfg, $volid);
        $drive->{file} = $voliddst;
        $conf->{$ds} = PVE::QemuServer::print_drive($vmid, $drive);
@@ -4474,9 +4465,10 @@ sub template_create {
     if($conf->{snapshots}){
        delete $conf->{parent};
        delete $conf->{snapshots};
-       PVE::QemuServer::update_config_nolock($vmid, $conf, 1);
        #fixme : do we need to delete disks snapshots ?
     }
+    $conf->{template} = 1;
+    PVE::QemuServer::update_config_nolock($vmid, $conf, 1);
 }
 
 sub is_template {