awx/app_setup/setup.yml

61 lines
1.8 KiB
YAML

---
# tested only on CentOS6, may need adaptations for other operating systems
# TODO: install any ansible plugins we need
# TODO: set up Apache or Nginx to proxy this application
# TODO: setup celery and any worker processes/requirements
- hosts: 127.0.0.1
gather_facts: False
user: root
vars_files:
- vars/vars.yml
tasks:
- name: install packages
action: yum name=$item state=installed
with_name:
- postgresql # database client
- postgresql-server # database server
- python-psycopg2 # database library
- name: install python modules
pip: requirements=${working_dir}/requirements.txt
- name: configure the database authentication more or less open for setup
template: src=templates/pg_hba_low.j2 dest=/var/lib/pgsql/data/pg_hba.conf
- name: restart postgresql
service: name=postgresql state=restarted
# took out parameter... db=acom priv=ALL
- name: setup the postgresql user
postgresql_user: >
name=ansible_commander
password=${database_password}
login_user=postgres
sudo_user: postgres
- name: create the database
postgresql_db: name=acom state=present
- name: configure the database authentication for runtime mode
template: src=templates/pg_hba.j2 dest=/var/lib/pgsql/data/pg_hba.conf
- name: restart postgresql
service: name=postgresql state=restarted
- name: configure python settings (with database password)
template: src=templates/settings.py.j2 dest=${working_dir}/lib/settings.py
- name: sync django database
django_manage: >
command=syncdb
app_path=${working_dir}
- name: run south migrations
command: python ${working_dir}/manage.py migrate main