首页 > 解决方案 > PHP Deployer:如何从主机设置中获取用户名

问题描述

我正在尝试通过 php deployer 部署我的代码,但我遇到了一个语法问题,我该如何重新使用host useron task

例如,我想以USERNAME动态barfoo方式替换。不是硬代码。

谁能给我一个建议?很合适。

host('17.99.88.225')
     ->user('barfoo') // This is the server user name
     ->stage('production')
     ->set('deploy_path', '/SERVER_PATH/{{application}}')
     ->set('branch', 'develop');

...

task('upload:env', function () {
      runLocally('scp .env USERNAME@{{hostname}}:{{release_path}}/.env');
})->desc('Environment setup');

标签: php-deployer

解决方案


我只是自己想办法。我想在这里分享:

我需要做的就是设置一个新变量并在我的脚本中使用它。哈哈

set('username', 'nanomed1'); // set my own variable
...
task('upload:env', function () {

  $username = get( 'username');  // use the variable I created on the top

  runLocally('scp .env '.$username.'@{{hostname}}:{{release_path}}/.env');
})->desc('Environment setup');

而已!


推荐阅读