[pve-devel] [PATCH container 2/3] Check lock for pct start, stop, suspend, shutdown
Fabian Grünbichler
f.gruenbichler at proxmox.com
Fri Jan 15 10:03:32 CET 2016
Correctly error out upon encountering a locked container
when doing pct start, pct stop, pct suspend or pct shutdown
---
src/PVE/API2/LXC/Status.pm | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/src/PVE/API2/LXC/Status.pm b/src/PVE/API2/LXC/Status.pm
index fb5480d..e119211 100644
--- a/src/PVE/API2/LXC/Status.pm
+++ b/src/PVE/API2/LXC/Status.pm
@@ -161,6 +161,8 @@ __PACKAGE__->register_method({
die "you can't start a CT if it's a template\n"
if PVE::LXC::is_template($conf);
+ PVE::LXC::check_lock($conf);
+
my $storage_cfg = cfs_read_file("storage.cfg");
PVE::LXC::update_lxc_config($storage_cfg, $vmid, $conf);
@@ -234,6 +236,10 @@ __PACKAGE__->register_method({
syslog('info', "stopping CT $vmid: $upid\n");
+ my $conf = PVE::LXC::load_config($vmid);
+
+ PVE::LXC::check_lock($conf);
+
my $cmd = ['lxc-stop', '-n', $vmid, '--kill'];
run_command($cmd);
@@ -304,6 +310,8 @@ __PACKAGE__->register_method({
my $conf = PVE::LXC::load_config($vmid);
+ PVE::LXC::check_lock($conf);
+
my $storage_cfg = PVE::Storage::config();
push @$cmd, '--timeout', $timeout;
@@ -370,6 +378,10 @@ __PACKAGE__->register_method({
syslog('info', "suspend CT $vmid: $upid\n");
+ my $conf = PVE::LXC::load_config($vmid);
+
+ PVE::LXC::check_lock($conf);
+
my $cmd = ['lxc-checkpoint', '-n', $vmid, '-s', '-D', '/var/liv/vz/dump'];
run_command($cmd);
--
2.1.4
More information about the pve-devel
mailing list