- hosts: all name: Remove any pre-installed tox tasks: - name: Remove tox package with pip shell: pip uninstall -y tox become: true failed_when: false - name: Remove tox package with pip3 shell: pip3 uninstall -y tox become: true failed_when: false - name: Verify tox is not installed command: "tox --version" register: result failed_when: result.rc == 0 - hosts: all name: Test ensure-tox installs into user environment tasks: - name: Verify tox is not installed command: "tox --version" register: result failed_when: result.rc == 0 - name: Run ensure-tox with tox not installed include_role: name: ensure-tox - name: Verify tox_executable is set assert: that: - tox_executable == "{{ ansible_user_dir }}/.local/tox/bin/tox" - name: Verify tox is installed command: "{{ tox_executable }} --version" register: result failed_when: result.rc != 0 - hosts: all name: Test ensure-tox when tox_executable is set to an already installed tox tasks: - name: Install tox inside a virtualenv pip: name: tox virtualenv: "{{ ansible_user_dir }}/tox-venv" virtualenv_command: "{{ ensure_pip_virtualenv_command }}" - name: Run ensure-tox pointing to an already installed tox include_role: name: ensure-tox vars: tox_executable: "{{ ansible_user_dir }}/tox-venv/bin/tox" - name: Verify tox_executable is set to the virtualenv tox assert: that: - tox_executable == '{{ ansible_user_dir}}/tox-venv/bin/tox'