Merge branch 'ent-3252-bug-modulecrontab' into 'develop'
Fixed module_crontab in first execution in Linux Closes pandora_enterprise#3252 See merge request artica/pandorafms!2096 Former-commit-id: 82248a9030939f1e37c0e252a3ffddff3f3f485c
This commit is contained in:
commit
958dbb263e
|
@ -516,11 +516,18 @@ sub parse_conf_modules($) {
|
|||
log_message ('setup', "Invalid regular expression in intensive condition: $line");
|
||||
}
|
||||
}
|
||||
} elsif ($line =~ /^\s*module_crontab\s+(((\*|(\d+(-\d+){0,1}))\s*){5}).*$/) {
|
||||
} elsif ($line =~ /^\s*module_crontab\s+(.*)$/) {
|
||||
my $cron_text = $1;
|
||||
chomp ($cron_text);
|
||||
$cron_text =~ s/\s+$//;
|
||||
# Get module name if is already read.
|
||||
my $module_name_message = "";
|
||||
$module_name_message = " (module $module->{'name'})" if defined($module->{'name'});
|
||||
if (cron_check_syntax($cron_text)) {
|
||||
$module->{'cron'} = $cron_text;
|
||||
log_message('debug', "Cron '$module->{'cron'}' configured $module_name_message.");
|
||||
} else {
|
||||
log_message('setup', "Incorrect cron syntax '$cron_text'. This module$module_name_message will be executed always.");
|
||||
}
|
||||
} elsif ($line =~ /^\s*module_end\s*$/) {
|
||||
|
||||
|
@ -2397,6 +2404,7 @@ sub check_module_cron {
|
|||
$interval
|
||||
);
|
||||
|
||||
my $is_first = ($module->{'cron_utimestamp'} == 0) ? 1 : 0;
|
||||
$module->{'cron_utimestamp'} = $now + $time_to_next_execution;
|
||||
$module->{'cron_interval'} = $time_to_next_execution;
|
||||
|
||||
|
@ -2405,7 +2413,7 @@ sub check_module_cron {
|
|||
}
|
||||
|
||||
# On first execution checking if cron is valid is required
|
||||
return 1 unless ($module->{'cron_utimestamp'} == 0);
|
||||
return 1 unless ($is_first);
|
||||
|
||||
# Check if current timestamp is a valid cron date
|
||||
my $next_execution = cron_next_execution_date(
|
||||
|
|
Loading…
Reference in New Issue