Приложение
My laravel (5.8) находится на общем хостинге в папке app
. Папка, привязанная к домену, public_html
расположена рядом с app
. У меня есть запланированное задание, подобное этому:
$schedule->command('feed:gen sitemap')
->withoutOverlapping()
->runInBackground()
->dailyAt('03:00')
->after(function() use($schedule) {
$schedule->exec('mv ~/app/public/Sitemap.xml ~/public_html/Sitemap.xml');
});
, которое создает карту сайта. xml и перемещает ее в папку root веб-сайта. Часть command
работает нормально, карта сайта. xml создается в папке ~/app/
, но хук after()
не вызывается. Я вполне уверен, что пути для команды mv
в порядке. С другой стороны, в документах неясно, как объединять несколько вызовов, включая ловушки, и какие вызовы функций можно связывать друг с другом. Может быть, мне нужно связать что-то еще с $schedule->exec()
? ..
PS: feed:gen sitemap
команда зарегистрирована в routes/console.php
как
Artisan::command('feed:gen {type}', function (FeedGenerator $gen, $type) {
// some code
})->describe('Generates feeds for site');