--- # 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 #################################################################### # WARNING: These are designed specifically for Ansible tests # # and should not be used as examples of how to write Ansible roles # #################################################################### - name: Determine capabilities ansible.builtin.set_fact: supports_ed25519: >- {{ not ( ansible_facts.os_family == "FreeBSD" and ansible_facts.distribution_version is version("12.1", ">=") and ansible_facts.distribution_version is version("12.2", "<") ) }} - name: Create keys community.crypto.openssl_privatekey: size: '{{ item.size | default(omit) }}' path: '{{ remote_tmp_dir }}/privatekey_{{ item.name }}.pem' type: '{{ item.type | default(omit) }}' curve: '{{ item.curve | default(omit) }}' passphrase: '{{ item.passphrase | default(omit) }}' format: '{{ item.format }}' when: item.condition | default(true) loop: - name: rsa_pass1 format: pkcs1 type: RSA size: '{{ default_rsa_key_size }}' passphrase: secret - name: ed25519 format: pkcs8 type: Ed25519 size: '{{ default_rsa_key_size }}' condition: '{{ supports_ed25519 }}' - name: x25519 format: pkcs8 type: X25519 size: '{{ default_rsa_key_size }}' - name: Run module with backend autodetection community.crypto.openssl_privatekey_convert: src_path: '{{ remote_tmp_dir }}/privatekey_rsa_pass1.pem' src_passphrase: secret dest_path: '{{ remote_tmp_dir }}/output_backend_selection.pem' dest_passphrase: hunter2 format: pkcs8 - block: - name: Running tests with cryptography backend ansible.builtin.include_tasks: impl.yml vars: select_crypto_backend: cryptography when: cryptography_version is version('3.3', '>=')