configpolicy/roles/websites/darkchestofwonders.us/tasks/main.yml

76 lines
1.6 KiB
YAML

- name: ensure mod_wsgi is installed
package:
name=python3-mod_wsgi
state=present
notify: restart httpd
tags:
- install
- name: ensure rsync is installed
package:
name=rsync
state=present
tags:
- install
- name: ensure app group exists
group:
name=webapp.dcow
state=present
- name: ensure app user exists
user:
name=webapp.dcow
group=webapp.dcow
home=/srv/www/darkchestofwonders.us
createhome=yes
state=present
- name: ensure app home directory permissions are set
file:
path=/srv/www/darkchestofwonders.us
mode=0755
state=directory
- name: ensure publisher keys are trusted
authorized_key:
key: "{{ dcow_publisher_keys|join('\n') }}"
user: webapp.dcow
exclusive: true
- name: ensure virtualenv exists
become: true
become_user: webapp.dcow
pip:
name: pip
virtualenv: /srv/www/darkchestofwonders.us/venv
virtualenv_command: /usr/bin/python3 -m venv
- name: ensure dcow wsgi script is installed
copy:
src=dcow.wsgi
dest=/srv/www/darkchestofwonders.us/dcow.wsgi
mode=0644
- name: ensure dcow app is configured
copy:
src=production.ini
dest=/srv/www/darkchestofwonders.us/production.ini
mode=0644
- name: ensure screenshot storage directories exist
file:
path=/srv/www/darkchestofwonders.us/{{ item }}
owner=webapp.dcow
group=webapp.dcow
mode=0755
state=directory
with_items:
- screenshots
- thumbnails
- name: ensure apache is configured to serve darkchestofwonders.us
template:
src=darkchestofwonders.us.httpd.conf.j2
dest=/etc/httpd/conf.d/darkchestofwonders.us.conf
mode=0644
notify: reload httpd