41 lines
1.2 KiB
PHP
Executable File
41 lines
1.2 KiB
PHP
Executable File
#!/usr/bin/env php
|
|
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
chdir(__DIR__ . '/..');
|
|
|
|
require 'vendor/autoload.php';
|
|
require 'config/config.php';
|
|
require 'lib/Support/helpers.php';
|
|
|
|
use MintyPHP\DB;
|
|
use MintyPHP\Service\Scheduler\SchedulerServicesFactory;
|
|
|
|
$exitCode = 0;
|
|
try {
|
|
$factory = new SchedulerServicesFactory();
|
|
$result = $factory->createSchedulerRunService()->runDueJobs();
|
|
if (!($result['ok'] ?? false)) {
|
|
$error = (string) ($result['error'] ?? 'unexpected_error');
|
|
fwrite(STDERR, sprintf("scheduler run failed: %s\n", $error));
|
|
$exitCode = 1;
|
|
} else {
|
|
$line = sprintf(
|
|
"scheduler completed: processed=%d success=%d failed=%d skipped=%d duration_ms=%d\n",
|
|
(int) ($result['processed'] ?? 0),
|
|
(int) ($result['success'] ?? 0),
|
|
(int) ($result['failed'] ?? 0),
|
|
(int) ($result['skipped'] ?? 0),
|
|
(int) ($result['duration_ms'] ?? 0)
|
|
);
|
|
fwrite(STDOUT, $line);
|
|
}
|
|
} catch (Throwable $exception) {
|
|
fwrite(STDERR, sprintf("scheduler run failed: unexpected_error: %s\n", $exception->getMessage()));
|
|
$exitCode = 1;
|
|
} finally {
|
|
DB::close();
|
|
}
|
|
exit($exitCode);
|