--- #################################################################### # WARNING: These are designed specifically for Ansible tests # # and should not be used as examples of how to write Ansible roles # #################################################################### - name: Include OS-specific variables include_vars: '{{ ansible_os_family }}.yml' when: not ansible_os_family == "Darwin" - name: Install pyOpenSSL (Python 3) become: true package: name: '{{ pyopenssl_package_name_python3 }}' when: not ansible_os_family == 'Darwin' and ansible_python_version is version('3.0', '>=') - name: Install pyOpenSSL (Python 2) become: true package: name: '{{ pyopenssl_package_name }}' when: not ansible_os_family == 'Darwin' and ansible_python_version is version('3.0', '<') - name: Install pyOpenSSL (Darwin) become: true pip: name: pyOpenSSL extra_args: "-c {{ remote_constraints }}" when: ansible_os_family == 'Darwin' - name: Register pyOpenSSL version command: "{{ ansible_python.executable }} -c 'import OpenSSL; print(OpenSSL.__version__)'" register: pyopenssl_version - name: Register pyOpenSSL debug details command: "{{ ansible_python.executable }} -m OpenSSL.debug" register: pyopenssl_debug_version ignore_errors: yes # Depending on which pyOpenSSL version has been installed, it could be that cryptography has # been upgraded to a newer version. Make sure to register cryptography_version another time here # to avoid strange testing behavior due to wrong values of cryptography_version. - name: Register cryptography version command: "{{ ansible_python.executable }} -c 'import cryptography; print(cryptography.__version__)'" register: cryptography_version ignore_errors: yes # in case cryptography was not installed, and setup_openssl hasn't been run before, ignore errors