Files @ 8457949f27d4
Branch filter:

Location: majic-ansible-roles/testsite/playbooks/roles/wsgihello2/tasks/main.yml

branko
MAR-154: Improve incorrect Python version handling in virtual environments:

- This should be helpful when performing distribution upgrades as
well (since it should be able to automatically detect a mismatch
now).
---

- name: Create directory for storing code
  file: dest="/var/www/wsgireq.{{ testsite_domain }}/code/" state=directory
        owner="admin-wsgireq_{{ testsite_domain_underscores }}" group="web-wsgireq_{{ testsite_domain_underscores }}" mode=2750

- name: Deploy requirements and its source for upgrade checks
  copy: src="{{ item }}" dest="/etc/pip_check_requirements_upgrades-py3/wsgireq.{{ testsite_domain }}/{{ item }}"
        owner="root" group="pipreqcheck" mode=640
  with_items:
    - requirements.in
    - requirements.txt

- name: Deploy requirements
  copy: src="requirements.txt" dest="/var/www/wsgireq.{{ testsite_domain }}/code/requirements.txt"
        owner="admin-wsgireq_{{ testsite_domain_underscores }}" group="web-wsgireq_{{ testsite_domain_underscores }}" mode=640

- name: Install latest version of pip
  become_user: "admin-wsgireq_{{ testsite_domain_underscores }}"
  pip: name=pip state=latest virtualenv="/var/www/wsgireq.{{ testsite_domain }}/virtualenv"

- name: Deploy pip-tools
  become_user: "admin-wsgireq_{{ testsite_domain_underscores }}"
  pip: name=pip-tools state=present virtualenv="/var/www/wsgireq.{{ testsite_domain }}/virtualenv"

- name: Synchronise virtual environment with requirements file
  become_user: "admin-wsgireq_{{ testsite_domain_underscores }}"
  command: "'/var/www/wsgireq.{{ testsite_domain }}/virtualenv/bin/exec' pip-sync ~/code/requirements.txt ~/.wsgi_requirements.txt"
  register: pip_sync_result
  changed_when: "pip_sync_result.stdout != 'Everything up-to-date'"
  notify:
    - Restart wsgihello2

- name: Deploy WSGI application
  copy: src="hello.wsgi" dest="/var/www/wsgireq.{{ testsite_domain }}/code/wsgi.py"
        owner="admin-wsgireq_{{ testsite_domain_underscores }}" group="web-wsgireq_{{ testsite_domain_underscores }}" mode=640
  notify:
    - Restart wsgihello2