【问题标题】:In envoy script console command raise error在特使脚本控制台命令中引发错误
【发布时间】:2020-01-12 10:00:26
【问题描述】:

使用 laravel 5.8 envoy 命令,我将更改部署在服务器上,需要运行一些控制台命令和我的脚本 我有错误

Could not open input file: artisan

在第二个控制台命令上

在我的脚本中:

@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 定义在 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");
    }
}

为什么会出错以及如何解决?

【问题讨论】:

    标签: laravel-envoy


    【解决方案1】:

    我发现我必须首先选择应用程序根目录:

    @task('clean_old_releases') cd {{ $release_number_dir }}

    php artisan envoy:delete-old-versions  Hostels2Deployed 
    

    【讨论】:

      猜你喜欢
      • 2012-11-30
      • 1970-01-01
      • 2016-06-10
      • 1970-01-01
      • 1970-01-01
      • 2017-09-19
      • 1970-01-01
      • 2018-01-18
      • 2020-07-09
      相关资源
      最近更新 更多