]> git.proxmox.com Git - pve-ha-manager.git/blobdiff - src/PVE/HA/Resources/PVEVM.pm
cleanup backup & mounted locks after recovery (fixes #1100)
[pve-ha-manager.git] / src / PVE / HA / Resources / PVEVM.pm
index 4c06df9a06ce2f7a54848f08401547ef221e6079..55d4368a6dede7e6ccee10d7513765728030309f 100644 (file)
@@ -116,4 +116,27 @@ sub check_running {
     return PVE::QemuServer::check_running($vmid, 1, $nodename);
 }
 
+sub remove_locks {
+    my ($self, $haenv, $id, $locks, $service_node) = @_;
+
+    $service_node = $service_node || $haenv->nodename();
+
+    my $conf = PVE::QemuConfig->load_config($id, $service_node);
+
+    return undef if !defined($conf->{lock});
+
+    foreach my $lock (@$locks) {
+       if ($conf->{lock} eq $lock) {
+           delete $conf->{lock};
+
+           my $cfspath = PVE::QemuConfig->cfs_config_path($id, $service_node);
+           PVE::Cluster::cfs_write_file($cfspath, $conf);
+
+           return $lock;
+       }
+    }
+
+    return undef;
+}
+
 1;