ansible-rookeries/tasks/rookeries_deployment.yaml

42 lines
1.7 KiB
YAML

---
- name: verify a deployment package ready for deployment, otherwise skip deployment steps
local_action: stat path={{ rookeries_package_path }}
sudo: no
register: deploy_package
- name: upload + extract rookeries package to web server home
unarchive: src={{ rookeries_package_path }} dest={{ web_root_path }}
sudo: yes
when: deploy_package.stat.exists
- name: install rookeries dependencies
pip: requirements=requirements.txt virtualenv={{ rookeries_venv }} chdir={{ rookeries_deploy_dir }}
when: deploy_package.stat.exists
# TODO Remove after transition to CouchDB as a store.
- name: install extra MySQL python connector dependency
pip: name=mysql-connector-python virtualenv={{ rookeries_venv }} version=1.1.6
extra_args="--allow-external mysql-connector-python --allow-unverified mysql-connector-python"
when: deploy_package.stat.exists
- name: install frontend dependencies for app
npm: path={{ rookeries_deploy_dir }} state=present registry=http://registry.npmjs.org/
when: deploy_package.stat.exists
- name: fix permissions on extracted web app
file: path={{ rookeries_deploy_dir }} owner={{ web_server_group }} group={{ web_server_group }}
state=directory recurse=yes
when: deploy_package.stat.exists
- name: add in symlink to deployed package.
file: state=link src={{ rookeries_deploy_dir }} path={{ rookeries_app_symlink }}
owner={{ web_server_group }} group={{ web_server_group }}
when: deploy_package.stat.exists
- name: add in symlink to deployed virtualenv.
file: state=link src={{ rookeries_venv }} path={{ rookeries_venv_symlink }}
owner={{ web_server_group }} group={{ web_server_group }}
notify:
- restart uwsgi app
when: deploy_package.stat.exists