publik-devinst/roles/app-setup/tasks/main.yml

72 lines
1.6 KiB
YAML

- name: set ansible server variables
set_fact:
app_settings: "{{venv_conf}}/{{app['db_name']}}_settings.py"
manage_app_name: "{{app['project_name']}}-manage"
server_app_name: "{{app['project_name']}}-server"
- name: create db
postgresql_db:
name: "{{app['db_name']}}"
owner: "{{user}}"
- name: conf directory
file:
path: "{{venv_conf}}"
state: directory
owner: "{{user}}"
group: "{{user}}"
become: yes
- name: app /var/lib directory
file:
path: "/var/lib/{{app['project_name']}}"
state: directory
owner: "{{user}}"
group: "{{user}}"
become: yes
- name: app /var/lib tenants directory
file:
path: "/var/lib/{{app['project_name']}}/tenants"
state: directory
owner: "{{user}}"
group: "{{user}}"
become: yes
- name: app settings file
template:
src: app-settings.j2
dest: "{{app_settings}}"
- name: manage script
template:
src: app-manage.j2
dest: "{{venv_bin}}/{{manage_app_name}}"
mode: "u=rwx,g=rx,o=rx"
- name: migrate schemas
command: "{{venv_bin}}/{{manage_app_name}} migrate_schemas"
- name: collect statics
shell: "echo yes | {{venv_bin}}/{{manage_app_name}} collectstatic"
- name: server script
template:
src: app-server.j2
dest: "{{venv_bin}}/{{server_app_name}}"
mode: "u=rwx,g=rx,o=rx"
- name: server log directory
file:
path: "/var/log/{{server_app_name}}"
state: directory
owner: "{{user}}"
group: "{{user}}"
become: yes
- name: server supervisor configuration
template:
src: server-supervisor.j2
dest: "/etc/supervisor/conf.d/{{server_app_name}}.conf"
become: yes