}
my $status;
+my $manager;
sub set_local_status {
my ($new_status) = @_;
$status = $new_status;
$haenv->write_local_status($status);
+
+ if ($status eq 'master') {
+ $manager = PVE::HA::Manager->new($haenv);
+ } else {
+ if ($manager) {
+ $manager->cleanup();
+ $manager = undef;
+ }
+ }
}
sub get_manager_lock {
$haenv->log('info', "starting simulation environment (status = $status)");
-my $manager = PVE::HA::Manager->new($haenv);
-
eval {
for (;;) {
} elsif ($status eq 'master') {
+ die "no manager" if !defined($manager);
+
my $startime = $haenv->get_time();
my $max_time = 10;