Я разместил свое приложение в Digital Ocean вместе с Laravel Forge и создал команду ремесленников для запуска по расписанию [Nightly].
Команда artisan работает без проблем через терминал, но возвращает Нет такого файла или каталога при запуске его через Scheduled Jobs
вручную из Laravel Forge.
Команда для задания:
php /home/forge/sitename.com/artisan Instagram:fetch
Команда ремесленника php /home/forge/sitename.com/artisan Inspire
Т.е. php artisan inspire возвращает правильный вывод.
В то время как вышеупомянутый пользовательский ремесленник возвращает Нет такого файла или каталога
app \ Console \ Commands \ FetchInstagram.php метод Генделя:
public function handle()
{
$instagram = new Instagram('api-key');
$posts = $instagram->media(); //gets 20 latest insta posts of a user
// dd($posts);
$fromDBs = Insta::orderBy('id', 'desc')->take(20)->get(); //get last 20 rows from table
foreach( $posts as $post)
{
Insta::firstOrCreate([
'thumb_link' => $post->images->thumbnail->url ,
'standard_link' => $post->images->standard_resolution->url ,
'caption' => $post->caption->text
]);
}
}
Код от Kernel.php
:
protected $commands = [
'App\Console\Commands\FetchInstagram'
];
protected function schedule(Schedule $schedule)
{
$schedule->command('Instagram:fetch')
->daily();
}