--- - name: download ranger git repo ansible.builtin.git: repo: "{{ ranger.repo }}" dest: "{{ ranger.download_directory }}" version: "{{ ranger.branch }}" - name: install build packages become: true ansible.builtin.package: name: - make - git - vim state: present - name: Run 'install' target as root become: true community.general.make: chdir: "{{ ranger.download_directory }}" target: install when: ansible_python_version[:1] == '3' - name: install python3 become: true ansible.builtin.package: name: python3 state: present register: install_python3 ignore_errors: true - name: install ranger with python3 become: true ansible.builtin.command: python3 setup.py install --optimize=1 args: chdir: "{{ ranger.download_directory }}" creates: '/usr/local/bin/ranger' when: not install_python3.failed - name: install legacy-python f00 become: true ansible.builtin.package: name: - python - python-setuptools state: present when: install_python3.failed - name: install ranger with legacy-python become: true ansible.builtin.command: python setup.py install --optimize=1 args: chdir: "{{ ranger.download_directory }}" creates: '/usr/local/bin/ranger' when: install_python3.failed