5
0
mirror of git://git.proxmox.com/git/qemu-server.git synced 2024-12-25 23:21:43 +03:00

template_create: check for 'clone' feature

This commit is contained in:
Dietmar Maurer 2013-02-15 08:44:12 +01:00
parent 3e2bbcdc0e
commit 9cd0784249

View File

@ -4409,7 +4409,7 @@ sub snapshot_delete {
lock_config($vmid, $updatefn);
}
sub has_feature{
sub has_feature {
my ($feature, $conf, $storecfg, $snapname, $running) = @_;
my $err = undef;
@ -4433,6 +4433,20 @@ sub template_create {
my $storecfg = PVE::Storage::config();
my $i = 0;
# First check if all disks have feature 'clone'.
# Note: there is no feature 'create_base', but we can safely assume
# that a storage with feature 'clone' can create base images.
foreach_drive($conf, sub {
my ($ds, $drive) = @_;
return if drive_is_cdrom($drive);
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, 'clone', $volid);
});
foreach_drive($conf, sub {
my ($ds, $drive) = @_;