my $realcmd = sub {
PVE::Cluster::log_msg('info', $authuser, "snapshot container $vmid: $snapname");
- PVE::LXC::snapshot_create($vmid, $snapname, $param->{description});
+ PVE::LXC::snapshot_create($vmid, $snapname, 0, $param->{description});
};
return $rpcenv->fork_worker('pctsnapshot', $vmid, $authuser, $realcmd);
}
};
-my $snapshot_prepare = sub {
- my ($vmid, $snapname, $comment) = @_;
+sub snapshot_prepare {
+ my ($vmid, $snapname, $save_vmstate, $comment) = @_;
my $snap;
lock_config($vmid, $updatefn);
return $snap;
-};
+}
-my $snapshot_commit = sub {
+sub snapshot_commit {
my ($vmid, $snapname) = @_;
my $updatefn = sub {
write_config($vmid, $conf);
};
- lock_config($vmid ,$updatefn);
-};
+ lock_config($vmid, $updatefn);
+}
sub has_feature {
my ($feature, $conf, $storecfg, $snapname) = @_;
}
sub snapshot_create {
- my ($vmid, $snapname, $comment) = @_;
+ my ($vmid, $snapname, $save_vmstate, $comment) = @_;
- my $snap = &$snapshot_prepare($vmid, $snapname, $comment);
+ my $snap = snapshot_prepare($vmid, $snapname, $save_vmstate, $comment);
my $conf = load_config($vmid);
die "$err\n";
}
- &$snapshot_commit($vmid, $snapname);
+ snapshot_commit($vmid, $snapname);
}
# Note: $drivehash is only set when called from snapshot_create.
$self->loginfo("create storage snapshot 'vzdump'");
# todo: freeze/unfreeze if we have more than one volid
- PVE::LXC::snapshot_create($vmid, 'vzdump', "vzdump backup snapshot");
+ PVE::LXC::snapshot_create($vmid, 'vzdump', 0, "vzdump backup snapshot");
$task->{cleanup}->{remove_snapshot} = 1;
# reload config