diff --git a/Makefile b/Makefile index 0fe1506..d6addd1 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ deploy: rm -rf output_prod/* vendor/bin/sculpin generate --env=prod --no-interaction BUILD_ENV=prod node_modules/.bin/gulp build - ansible-playbook --inventory "ansible/hosts_prod" --user=deployer ansible/deploy.yml + deployer deploy production rollback: - ansible-playbook --inventory "ansible/hosts_prod" --user=deployer ansible/rollback.yml + deployer rollback production diff --git a/ansible/deploy.yml b/ansible/deploy.yml deleted file mode 100644 index e6f3105..0000000 --- a/ansible/deploy.yml +++ /dev/null @@ -1,12 +0,0 @@ ---- -- name: Deploy homepage - hosts: all - - vars: - ansistrano_deploy_from: "{{ playbook_dir }}/../output_prod/" - ansistrano_deploy_to: "{{ application_root }}" - ansistrano_keep_releases: 3 - ansistrano_deploy_via: rsync - - roles: - - carlosbuenosvinos.ansistrano-deploy diff --git a/ansible/hosts_prod b/ansible/hosts_prod deleted file mode 100644 index 8ffa174..0000000 --- a/ansible/hosts_prod +++ /dev/null @@ -1 +0,0 @@ -188.225.32.183 application_root=/var/www/anwinged diff --git a/ansible/rollback.yml b/ansible/rollback.yml deleted file mode 100644 index c4587eb..0000000 --- a/ansible/rollback.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- -- name: Rollback homepage - hosts: all - - vars: - ansistrano_deploy_to: "{{ application_root }}" - - roles: - - carlosbuenosvinos.ansistrano-rollback diff --git a/ansible/vagrant-requirements.yml b/ansible/vagrant-requirements.yml index 9aa9c4a..fb885ae 100644 --- a/ansible/vagrant-requirements.yml +++ b/ansible/vagrant-requirements.yml @@ -10,9 +10,3 @@ - src: geerlingguy.composer version: 1.5.0 - -- src: carlosbuenosvinos.ansistrano-deploy - version: 1.12.0 - -- src: carlosbuenosvinos.ansistrano-rollback - version: 1.5.0 diff --git a/deploy.php b/deploy.php new file mode 100644 index 0000000..9432e78 --- /dev/null +++ b/deploy.php @@ -0,0 +1,41 @@ +user('deployer') + ->stage('production') + ->set('deploy_path', '/var/www/anwinged') +; + +// Saved releases +set('keep_releases', 2); + +// Excluded dirs for upload +set('upload_excluded_dirs', []); + +// Upload app sources on remote host +task('upload', function () { + $excluded = array_map(function ($dir) { + return sprintf('--exclude "%s"', $dir); + }, get('upload_excluded_dirs')); + upload(__DIR__ . '/output_prod/', '{{release_path}}', [ + 'options' => $excluded, + ]); +}); + +// Deploy task +task('deploy', [ + 'deploy:info', + 'deploy:prepare', + 'deploy:lock', + 'deploy:release', + 'upload', + 'deploy:symlink', + 'deploy:unlock', + 'cleanup', +]); + +after('deploy', 'success');