With laravel 5.8 envoy command I deploy my changes on server and need to run some console command and I my script I got error
Could not open input file: artisan
on the second console command
In my script :
@task( 'update_symlinks' )
ln -nfs {{ $release_number_dir }} {{ $current_dir }};
@foreach($writableDirs as $file)
chmod -R 777 {{ $release_number_dir }}/{{ $file }}
chown -R {{ $server_login_user }}:www-data {{ $release_number_dir }}/{{ $file }}
@endforeach
cd {{ $release_number_dir }}
php artisan envoy:write-app-version app_version // THAT WORKS OK
@endtask
@task('clean_old_releases')
php artisan envoy:delete-old-versions Hostels2Deployed // BUT THAT raise error
@endtask
@macro('Hostels2Deploy',['on'=>'dev'])
...
update_symlinks
clean_old_releases
@endmacro
envoy:delete-old-versions defined in app/Console/Commands/envoyDeleteoldVersions.php :
<?php
namespace App\Console\Commands;
use Illuminate\Support\Facades\File;
use Illuminate\Support\Facades\Storage;
use Illuminate\Console\Command;
class envoyDeleteoldVersions extends Command
{
protected $signature = 'envoy:delete-old-versions {directory_to_clear}';
protected $description = 'Command description';
public function __construct()
{
parent::__construct();
}
public function handle()
{ // php artisan envoy:delete-old-versions "/_wwwroot/lar/Hostels2/storage/app/public/hostels"
$arguments = $this->arguments();
if ( !empty($arguments['directory_to_clear']) ) {
$directory_name = $arguments['directory_to_clear'];
}
$directoriesList = File::directories($directory_name);
$sortedDirectories = collect($directoriesList)
->sortBy(function ($dir) {
return filemtime( $dir );
})
echo '<pre>+++ 222 $sortedDirectories::'.print_r($sortedDirectories,true).'</pre>';
die("-1 XXZ");
}
}
Why error and how to fix it ?