configpolicy/roles/websites/dustin.hatch.name/tasks/main.yml

61 lines
1.3 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.dchwww
state=present
- name: ensure app user exists
user:
name=webapp.dchwww
group=webapp.dchwww
home=/srv/www/dustin.hatch.name
createhome=yes
state=present
- name: ensure app home directory permissions are set
file:
path=/srv/www/dustin.hatch.name
mode=0755
state=directory
- name: ensure publisher keys are trusted
authorized_key:
key: "{{ dchwww_publisher_keys|join('\n') }}"
user: webapp.dchwww
exclusive: true
- name: ensure authorized_keys file permissions are correct
file:
path: /srv/www/dustin.hatch.name/.ssh/authorized_keys
mode: '0600'
owner: webapp.dchwww
group: webapp.dchwww
setype: ssh_home_t
- name: ensure virtualenv exists
become: true
become_user: webapp.dchwww
pip:
name: pip
virtualenv: /srv/www/dustin.hatch.name/venv
virtualenv_command: /usr/bin/python3 -m venv
- name: ensure apache is configured to serve dustin.hatch.name
copy:
src=dustin.hatch.name.httpd.conf
dest=/etc/httpd/conf.d/dustin.hatch.name.conf
mode=0644
notify: reload httpd