array_merge($sharedDirectories, $sharedFiles, $exclude), 'exclude-file' => false, 'include' => [], 'include-file' => false, 'filter' => ['dir-merge,-n /.gitignore'], 'filter-file' => false, 'filter-perdir' => false, 'flags' => 'avz', 'options' => ['delete'], 'timeout' => 300 ]); task('typo3:cache:flush', function() { cd('current'); run('{{bin/php}} bin/typo3 cache:flush'); }); task('typo3:extension:setup', function () { cd('{{release_path}}'); run('{{bin/php}} bin/typo3 extension:setup'); }); task('typo3:cache:warmup', function() { cd('current'); run('{{bin/php}} bin/typo3 cache:warmup'); }); task('typo3:language:update', function() { cd('current'); run('{{bin/php}} bin/typo3 language:update'); }); // needed for t3o infrastructure task('php:reload', function() { run('php-reload'); })->select('stage=contentmaster'); task('php:reload-prod', function() { run('php-reload'); })->select('stage=production'); // Because we are using rsync, this task is disabled // to avoid to trigger git task('deploy:update_code')->hidden()->disable(); task('release:create', [ 'deploy:prepare', 'rsync', 'deploy:vendors', 'deploy:shared', 'deploy:writable', 'typo3:extension:setup', 'deploy:unlock', 'deploy:success' ]); task('release:switch', [ 'deploy:symlink', 'php:reload', 'php:reload-prod', 'typo3:cache:flush', 'typo3:language:update', 'typo3:cache:warmup', 'deploy:unlock', 'deploy:cleanup', 'deploy:success' ]); task('deploy', [ 'deploy:prepare', 'rsync', 'deploy:vendors', 'deploy:shared', 'deploy:writable', 'typo3:cache:flush', 'typo3:extension:setup', 'deploy:symlink', 'php:reload', 'php:reload-prod', 'typo3:cache:flush', 'typo3:language:update', 'typo3:cache:warmup', 'deploy:unlock', 'deploy:cleanup', 'deploy:success' ]); host('stage') ->set('cachetool', '/var/run/phpfpm/dialog-relations.cloonar.dev.sock'); host('production') ->set('cachetool', '/var/run/phpfpm/dialog-relations.at.sock'); after('deploy:symlink', 'cachetool:clear:opcache'); // unlock after failure after('deploy:failed', 'deploy:unlock');