* Add alternative to using the artisan schedule runner * StyleCI fixes * Add additional cron time periods * Style fixes * Typo * Update the web cron to use the new system * Write out JSON for which tasks were run * Rename cron.php to just cron
36 lines
776 B
PHP
36 lines
776 B
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Api;
|
|
|
|
use App\Console\Cron;
|
|
use App\Contracts\Controller;
|
|
use App\Exceptions\CronInvalid;
|
|
use Illuminate\Http\Request;
|
|
|
|
class MaintenanceController extends Controller
|
|
{
|
|
/**
|
|
* Run the cron job from the web
|
|
*
|
|
* @param Request $request
|
|
* @param string $id The ID passed in for the cron
|
|
*
|
|
* @return mixed
|
|
*/
|
|
public function cron(Request $request, string $id)
|
|
{
|
|
$cron_id = setting('cron.random_id');
|
|
if (empty($cron_id) || $id !== $cron_id) {
|
|
throw new CronInvalid();
|
|
}
|
|
|
|
$cron = app(Cron::class);
|
|
$run = $cron->run();
|
|
|
|
return response()->json([
|
|
'count' => count($run),
|
|
'tasks' => $run,
|
|
]);
|
|
}
|
|
}
|