Laravel Envoy показывает ошибку, но не показывает окружающую среду

У меня проблема с посланником Ларавела. Я написал сценарий для развертывания на сервере, и я вызываю этот сценарий с
envoy run deploy --environment=staging
но когда происходит ошибка, я не вижу, из какого производства происходит ошибка. Например, ошибка возникает при переносе php artisan, и я могу отследить задачу, где произошла ошибка, но я не могу получить среду. Вот мой код:

@error

@slack('hook', '#deploy', "Deploy failed on {$environment} error: 
$task")
exit;
@enderror

И вывод на развертывание слабого канала:
Ошибка развертывания при ошибке: migrate-db

1 ответ

Похоже, ваш скрипт Envoy имеет ошибку в migrate-db задача. Без публикации кода для этой задачи трудно точно сказать, что происходит. Я бы предложил использовать простой echo в рамках задачи, чтобы получить сценарий для завершения в первую очередь.

Бежать envoy run deploy --env=staging

@servers(['web' => '127.0.0.1'])

@setup
    $env  = isset($env) ? $env : "localhost";
    $host = gethostname();
    $hook =  "https://hooks.slack.com/services/XXX";
    $channel = "#your-channel";
@endsetup

@story('deploy')
    migrate-db
@endstory

@task('migrate-db')
    echo 'migrate-db'
@endtask

@error
    @slack($hook, $channel, "Deploy failed on [$env], hostname: $host");
    echo "Deploy failed on [$env], hostname: $host\r\n";
@enderror

@finished
    @slack($hook, $channel, "Deploy succeeded on [$env], hostname: $host");
    echo "Deploy succeeded on [$env], hostname: $host\r\n";
@endfinished
Другие вопросы по тегам