<?php namespace Deployer; require 'recipe/symfony4.php'; // Project name set('application', 'beta.pflaenz.li'); // Project repository set('repository', 'ssh://git@git.thisfro.ch:222/thisfro/pflaenz.li.git'); // [Optional] Allocate tty for git clone. Default value is false. set('git_tty', true); // Shared files/dirs between deploys add('shared_files', []); add('shared_dirs', []); // Writable dirs by web server add('writable_dirs', []); // Set composer options set('composer_options', '{{composer_action}} --verbose --prefer-dist --no-progress --no-interaction --optimize-autoloader --no-scripts'); // Hosts host('beta.xn--pflnz-ira.li') ->user('lq5xi_thisfro') ->set('deploy_path', '~/sites/{{application}}') ->set('http_user', 'uid153060'); // Tasks task('upload:build', function() { upload('public/build/', '{{release_path}}/public/build/'); }); // Build yarn locally task('deploy:build:assets', function (): void { run('yarn install'); run('yarn encore production'); })->local()->desc('Install front-end assets'); before('deploy:symlink', 'deploy:build:assets'); // Upload assets task('upload:assets', function (): void { upload(__DIR__.'/public/build/', '{{release_path}}/public/build'); }); task('upload:build', function() { upload("public/build/", '{{release_path}}/public/build/'); }); task('upload:build', function() { upload("public/build/", '{{release_path}}/public/build/'); }); after('deploy:build:assets', 'upload:assets'); // [Optional] if deploy fails automatically unlock. after('deploy:failed', 'deploy:unlock'); before('deploy:symlink', 'database:migrate');