- 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 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