The Custom/ prefix is a namespace, not a directory under SCRIPTS_DIR, so every launcher that resolved it as one could never find the script.
19 lines
843 B
Bash
Executable File
19 lines
843 B
Bash
Executable File
#!/bin/bash
|
|
# Varaverk: fire all jobs with cron=array_start (background — non-blocking).
|
|
php -r "
|
|
require_once '/usr/local/emhttp/plugins/varaverk/include/scheduler.php';
|
|
\$s = vv_schedule_load();
|
|
\$runner = '/usr/local/emhttp/plugins/varaverk/run_job.sh';
|
|
foreach (\$s as \$id => \$e) {
|
|
if (strncmp(\$id, '__', 2) === 0) continue;
|
|
if ((\$e['cron'] ?? '') !== 'array_start') continue;
|
|
if (empty(\$e['enabled'])) continue;
|
|
\$script = strncmp(\$id, 'Custom/', 7) === 0
|
|
? CUSTOM_SCRIPTS_DIR . '/' . substr(\$id, 7)
|
|
: SCRIPTS_DIR . '/' . \$id;
|
|
if (!file_exists(\$script)) continue;
|
|
\$flags = !empty(\$e['log_enabled']) ? ' --log' : '';
|
|
exec('nohup bash ' . escapeshellarg(\$runner) . ' ' . escapeshellarg(\$id) . ' ' . escapeshellarg(\$script) . \$flags . ' > /dev/null 2>&1 &');
|
|
}
|
|
" 2>/dev/null
|