e70ee5aa6f
* Use database for kvp storage * Read kvpstore * Add web cron ability through API #821 * Style fixes * Fix text
36 lines
797 B
PHP
36 lines
797 B
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Api;
|
|
|
|
use App\Contracts\Controller;
|
|
use App\Exceptions\CronInvalid;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Artisan;
|
|
|
|
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();
|
|
}
|
|
|
|
$output = '';
|
|
Artisan::call('schedule:run');
|
|
$output .= trim(Artisan::output());
|
|
|
|
return response([
|
|
'content' => $output,
|
|
]);
|
|
}
|
|
}
|