mtas-tv-frontend/deploy.php
2019-06-20 13:15:46 +02:00

72 lines
1.9 KiB
PHP
Executable File

<?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', 'production');
// Servers - mtas : esekivws5222a.rnd.ki.sw.ericsson.se
host('mtas')
->stage('production')
->user('edvidan')
->forwardAgent()
->set('ng_basehref', '/mtastv/')
->set('ng_configuration', 'production')
->set('env_vars', 'NODE_ENV=production')
->set('deploy_path', '/proj/webdocs/mtoolbox/root/mtastv-inst/frontend');
host('vasgyuro.tsp')
->stage('staging')
->user('edvidan')
->forwardAgent()
->set('ng_basehref', '/mtas-tv/')
->set('ng_configuration', 'staging')
->set('env_vars', 'NODE_ENV=production')
->set('deploy_path', '/home/edvidan/applications/mtas-tv');
// Tasks
desc('Build release');
task('deploy:ng-build', function() {
runLocally("ng build --base-href={{ng_basehref}} --configuration={{ng_configuration}}");
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");
upload("htaccess", "{{release_path}}/dist/.htaccess");
$revision = get("release_name");
within('{{release_path}}', function () use ($revision){
run("echo $revision > dist/revision.json");
});
});
desc('Deploy your project');
task('deploy', [
'deploy:prepare',
'deploy:lock',
'deploy:release',
'deploy:ng-build',
'deploy:ng-upload',
'deploy:shared',
'deploy:clear_paths',
'deploy:symlink',
'deploy:unlock',
'cleanup',
]);
after('deploy', 'success');