[pve-devel] [PATCH pve-manager 2/2] Fix check if vm is ha managed	in get_start_stop_list
    Thomas Lamprecht 
    t.lamprecht at proxmox.com
       
    Mon Oct 19 18:02:47 CEST 2015
    
    
  
The check used was completely wrong and so the startall and stopall
API calls touched HA managed service, which they shouldn't.
Using the vm_is_ha_managed call from the HA stack fixes that.
Signed-off-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
---
 PVE/API2/Nodes.pm | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/PVE/API2/Nodes.pm b/PVE/API2/Nodes.pm
index 8a8a7c1..41baca0 100644
--- a/PVE/API2/Nodes.pm
+++ b/PVE/API2/Nodes.pm
@@ -1132,7 +1132,6 @@ __PACKAGE__->register_method({
 my $get_start_stop_list = sub {
     my ($nodename, $autostart) = @_;
 
-    my $haconf = PVE::HA::Config::read_resources_config();
     my $vmlist = PVE::Cluster::get_vmlist();
 
     my $resList = {};
@@ -1164,8 +1163,8 @@ my $get_start_stop_list = sub {
 	    }
 
 	    # skip ha managed VMs (started by pve-ha-manager)
-	    return if defined($haconf->{ids}->{"pvevm:$vmid"});
-	    
+	    return if PVE::HA::Config::vm_is_ha_managed($vmid);
+
 	    $resList->{$startup->{order}}->{$vmid} = $startup;
 	    $resList->{$startup->{order}}->{$vmid}->{type} = $d->{type};
 	};
-- 
2.1.4
    
    
More information about the pve-devel
mailing list