#!/usr/bin/perl -T

$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin';

delete @ENV{qw(IFS CDPATH ENV BASH_ENV)};

use strict;
use warnings;

use PVE::SafeSyslog;
use PVE::INotify;
use PVE::RESTEnvironment;

use PMG::Utils;
use PMG::Config;
use PMG::ClusterConfig;
use PMG::LDAPSet;
use PMG::DBTools;
use PMG::Statistic;

$SIG{'__WARN__'} = sub {
    my $err = $@;
    my $t = $_[0];
    chomp $t;
    print STDERR "$t\n";
    syslog('warning', "%s", $t);
    $@ = $err;
};

PVE::RESTEnvironment->setup_default_cli_env();

initlog('pmg-hourly', 'mail');

my $cfg = PMG::Config->new();

my $demo = $cfg->get('admin', 'demo');

my $cinfo = PMG::ClusterConfig->new();

if ($demo) {
    # fixme: generate fake statistics

    return;
}

PMG::Utils::service_cmd('pmgpolicy', 'reload-or-restart');

my $ldap_cfg = PVE::INotify::read_file("pmg-ldap.conf");
PMG::LDAPSet::ldap_resync($ldap_cfg);

# sync bayes journal to database
system('sa-learn --sync >/dev/null 2>&1');

# make sure clamav-daemon is running
PMG::Utils::service_cmd('clamav-daemon', 'start');

exit(0);

