Files @ b55cb83f8342
Branch filter:

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

branko
Noticket: Added workaround to development process for outdated Molecule version:

- Unfortunately, the Molecule version used for running tests does not
generate valid Ruby 3.x code. For now just work around the way Hash
is unpacked in function calls to optional arguments (until the test
stack gets a revamp).
---

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