68 lines
1.7 KiB
PHP
68 lines
1.7 KiB
PHP
<?php
|
|
|
|
namespace Deployer;
|
|
require 'recipe/common.php';
|
|
|
|
set('ssh_type', 'native');
|
|
set('ssh_multiplexing', true);
|
|
|
|
// Configuration
|
|
|
|
// set('repository', 'git@domain.com:username/repository.git');
|
|
set('shared_files', []);
|
|
set('shared_dirs', []);
|
|
set('writable_dirs', []);
|
|
set('keep_releases', 3);
|
|
set('default_stage', 'staging');
|
|
|
|
// Servers
|
|
host('alfheim')
|
|
->stage('staging')
|
|
->user('yvan')
|
|
->forwardAgent()
|
|
->set('ng_basehref', '/admin/')
|
|
->set('ng_target', 'production')
|
|
->set('ng_environment', 'prod')
|
|
->set('env_vars', 'NODE_ENV=production')
|
|
->set('deploy_path', '/mnt/apps/granprize/admin');
|
|
|
|
host('granprize')
|
|
->stage('production')
|
|
->user('edvidan')
|
|
->forwardAgent()
|
|
->set('ng_basehref', '/admin/')
|
|
->set('ng_target', 'production')
|
|
->set('ng_environment', 'prod')
|
|
->set('env_vars', 'NODE_ENV=production')
|
|
->set('deploy_path', '/var/www/granprize.swedishchamber.hu/admin');
|
|
|
|
// Tasks
|
|
desc('Prepare release');
|
|
task('deploy:ng-prepare', function() {
|
|
runLocally("ng build --base-href={{ng_basehref}} --target={{ng_target}} --environment={{ng_environment}}");
|
|
runLocally("tar -cJf dist.tar.xz dist");
|
|
});
|
|
|
|
desc('Upload release');
|
|
task('deploy:ng-upload', function() {
|
|
upload("dist.tar.xz", "{{release_path}}/dist.tar.xz");
|
|
run("tar -C {{release_path}} -xJf {{release_path}}/dist.tar.xz");
|
|
run("rm -f {{release_path}}/dist.tar.xz");
|
|
runLocally("rm -rf dist.tar.xz dist");
|
|
});
|
|
|
|
desc('Deploy your project');
|
|
task('deploy', [
|
|
'deploy:prepare',
|
|
'deploy:lock',
|
|
'deploy:release',
|
|
'deploy:ng-prepare',
|
|
'deploy:ng-upload',
|
|
'deploy:shared',
|
|
'deploy:clear_paths',
|
|
'deploy:symlink',
|
|
'deploy:unlock',
|
|
'cleanup',
|
|
]);
|
|
after('deploy', 'success');
|