--- # Copyright (c) Ansible Project # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later - hosts: localhost tasks: - name: Show Python info debug: var: ansible_python - name: Register cryptography version command: "{{ ansible_python.executable }} -c 'import cryptography; print(cryptography.__version__)'" register: cryptography_version - name: Register pyOpenSSL version command: "{{ ansible_python.executable }} -c 'import OpenSSL; print(OpenSSL.__version__)'" ignore_errors: true register: pyopenssl_version - name: Determine output directory set_fact: output_path: "{{ 'output-%0x' % ((2**32) | random) }}" - name: Find all roles ansible.builtin.find: paths: - "{{ (playbook_dir | default('.')) ~ '/roles' }}" file_type: directory depth: 1 register: result - name: Create output directory ansible.builtin.file: path: "{{ output_path }}" state: directory - block: - name: Include all roles ansible.builtin.include_role: name: "{{ item }}" loop: "{{ result.files | map(attribute='path') | map('regex_replace', '.*/', '') | sort }}" always: - name: Remove output directory ansible.builtin.file: path: "{{ output_path }}" state: absent