Я настроил файл cron.yaml, следуя документации по облаку Google. Затем я создал маршрут в своем приложении, связанный с контроллером.
Этот контроллер запускает «php artisan schedule: run» и в файле Kernel.php указано, что он должен делать. В этом случае он должен отправить мне письмо с некоторой информацией, но он никогда не будет отправлен. Я запустил его в Tinker, и он отправил письмо, поэтому проблема не должна быть там.
На вкладке cron job в App Engine указано, что состояние не выполнено. Когда я просматриваю журналы приложения, оно выполняет вызов по указанному маршруту, но возвращает HTTP-ответ 302.
cron.yaml:
cron:
- description: "laravel cron"
url: /opdrachten/cron
schedule: every 1 mins
timezone: Europe/Brussels
web.php
Route::get('/opdrachten/cron', 'JobController@cron');
JobController.php
public function cron() {
Artisan::call('schedule:run');
}
app / Console / Kernel.php
protected function schedule(Schedule $schedule)
{
$schedule->call(function() {
$job = Job::all()[0];
Mail::to('myemail@gmail.com')
->send(new JobFinished($job));
})->timezone('Europe/Brussels')->dailyAt('08:00');
}
Ожидаемый результат заключается в том, что письмо отправляется ежедневно в 8 часов утра благодаря cronработа.
Заранее спасибо!