我正在学习使用 Deployer 将我的 Laravel 应用程序部署到登台/生产环境。
下面的配置有效,但它总是部署相同的代码。是否可以将 staging 设置为仅部署develop
分支,并将生产设置为部署master
分支?
namespace Deployer;
require 'recipe/laravel.php';
set('application', 'my_app');
set('repository', 'git@github.com:account/repo-name.git');
set('php_fpm_version', '8.0');
set('git_tty', false);
add('shared_files', []);
add('shared_dirs', []);
add('writable_dirs', []);
host('staging')
->hostname('hostname-here')
->user('username')
->identityFile('~/.ssh/id_rsa')
->multiplexing(false)
->set('deploy_path', '~/staging');
host('production')
->hostname('hostname-here')
->user('username')
->identityFile('~/.ssh/id_rsa')
->multiplexing(false)
->set('deploy_path', '~/production');
task('build', function () {
run('cd {{release_path}} && build');
});
after('deploy:failed', 'deploy:unlock');
before('deploy:symlink', 'artisan:migrate');