]> git.proxmox.com Git - pve-ha-manager.git/commitdiff
Tools/Config: refactor lrm status json reading
authorFabian Grünbichler <f.gruenbichler@proxmox.com>
Wed, 10 Oct 2018 11:55:03 +0000 (13:55 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Wed, 17 Oct 2018 09:20:41 +0000 (11:20 +0200)
to avoid unnecessary dependency on PVE::Cluster in PVE::HA::Tools.

reading the LRM status file was the only instance of reading from the
CFS via this method.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
src/PVE/HA/Config.pm
src/PVE/HA/Tools.pm

index 5de4779ec4af4aac473b9336569004804bf1114a..5660d19189df98ff706edcda4d60c814754309fe 100644 (file)
@@ -48,9 +48,13 @@ sub read_lrm_status {
 
     die "undefined node" if !defined($node);
 
-    my $filename = "/etc/pve/nodes/$node/lrm_status";
+    my $cfs_path = "nodes/$node/lrm_status";
+
+    my $raw = PVE::Cluster::get_config($cfs_path);
+    die "unable to read file '/etc/pve/$cfs_path'\n"
+       if !defined($raw);
 
-    return PVE::HA::Tools::read_json_from_file($filename, {});  
+    return json_reader(undef, $raw);
 }
 
 sub write_lrm_status {
index 88f775eadc63c79f534b6c914fa543c96d4375e3..2bdd6eaff65e05dabaef2561b052b1f880bb793e 100644 (file)
@@ -124,16 +124,7 @@ sub read_json_from_file {
     if (defined($default) && (! -f $filename)) {
        $data = $default;
     } else {
-       my $raw;
-       # workaround for bug #775
-       if ($filename =~ m|^/etc/pve/|) {
-           $filename =~ s|^/etc/pve/+||;
-           $raw = PVE::Cluster::get_config($filename);
-           die "unable to read file '/etc/pve/$filename'\n" 
-               if !defined($raw);
-       } else {
-           $raw = PVE::Tools::file_get_contents($filename);
-       }
+       my $raw = PVE::Tools::file_get_contents($filename);
        $data = decode_json($raw);
     }