在laravel 5.8中,我运行特使我想在控制台命令中设置用户密码,例如
envoy run Deploy --serveruser_password=mypass1112233
包含特使文件:
@setup
$server_login_user= 'serveruser';
$user_password = isset($serveruser_password) ? $serveruser_password : "Not Defined";
@endsetup
@task( 'clone_project', ['on'=>$on] )
echo '$user_password password ::';
echo $user_password;
但是$ user_password在两种情况下输出为空: 1)如果在命令
中设置了serveruser_passwordenvoy run Deploy --serveruser_password=mypass1112233
2)或为空
envoy run Deploy
但是我希望输出“未定义” ...
为什么出错,如何出错?
谢谢!
答案 0 :(得分:1)
以下是您需要执行的操作。
@setup
$server_login_user = 'serveruser';
$user_password = isset($serveruser_password) ? $serveruser_password : 'Not Defined';
@endsetup
@servers(['local' => '127.0.0.1'])
@macro('deploy')
clone_project
@endmacro
@task('clone_project')
echo 'The password is: {{ $user_password }}.';
@endtask
确保您的宏命名为“ deploy”而不是“ Deploy”。同样,在您的echo语句中,使用花括号将您的set变量回显。输出如下。
$ envoy run deploy --serveruser_password=mypass1112233
[127.0.0.1]: The password is: mypass1112233.
$ envoy run deploy
[127.0.0.1]: The password is: Not Defined.