Di Laravel 5.8 menggunakan utusan saya ingin mengatur kata sandi pengguna di perintah konsol, seperti

envoy run Deploy  --serveruser_password=mypass1112233

Memiliki dalam file utusan:

@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;

Tetapi output $user_password kosong dalam kedua kasus: 1) jika serveruser_password diatur dalam perintah

envoy run Deploy  --serveruser_password=mypass1112233

2) atau kosong

envoy run Deploy

Tapi saya berharap "Tidak Didefinisikan" dikeluarkan ...

Mengapa kesalahan dan seberapa benar?

3
mstdmstd 29 Maret 2019, 15:19

1 menjawab

Jawaban Terbaik

Coba yang berikut ini.

@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

Pastikan makro Anda bernama "deploy" dan bukan "Deploy". Juga, dalam pernyataan gema Anda, gunakan kurung kurawal untuk menggemakan variabel yang Anda setel. Outputnya akan seperti berikut.

$ 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.
3
Karl Hill 13 Desember 2020, 20:01