]> git.proxmox.com Git - pve-ha-manager.git/blame - PVE/HA/Manager.pm
introduce new HA::Manger class
[pve-ha-manager.git] / PVE / HA / Manager.pm
CommitLineData
c0bbd038
DM
1package PVE::HA::Manager;
2
3use strict;
4use warnings;
5
6use Data::Dumper;
7
8use PVE::HA::NodeStatus;
9
10sub new {
11 my ($this, $env) = @_;
12
13 my $class = ref($this) || $this;
14
15 my $self = bless {
16 env => $env,
17 }, $class;
18
19 return $self;
20}
21
22sub manage {
23 my ($self) = @_;
24
25 my $haenv = $self->{env};
26
27 my $ms = $haenv->read_manager_status();
28
29 $ms->{node_status} = {} if !$ms->{node_status};
30
31 my $node_status = PVE::HA::NodeStatus->new($haenv, $ms->{node_status});
32
33 $ms->{master_node} = $haenv->nodename();
34
35 my $node_info = $haenv->get_node_info();
36
37 $node_status->update($node_info);
38
39
40 $ms->{node_status} = $node_status->{status};
41 $haenv->write_manager_status($ms);
42
43}
44
45
461;