# Copyright: (c) 2019, Hetzner Cloud GmbH # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) --- - name: setup ensure ssh key is absent hcloud_ssh_key: name: "{{ hcloud_ssh_key_name }}" state: absent register: result - name: setup test ssh_key hcloud_ssh_key: name: "{{hcloud_ssh_key_name}}" public_key: "{{ key_material }}" labels: key: value register: result - name: verify create test ssh_key assert: that: - result is changed - result.hcloud_ssh_key.public_key == "{{ key_material }}" - name: test gather hcloud ssh key infos in check mode hcloud_ssh_key_info: register: hcloud_ssh_key check_mode: yes - name: verify test gather hcloud ssh key infos in check mode assert: that: - hcloud_ssh_key.hcloud_ssh_key_info| list | count >= 1 - name: test gather hcloud ssh key infos hcloud_ssh_key_info: register: hcloud_ssh_key check_mode: yes - name: verify test gather hcloud ssh key infos assert: that: - hcloud_ssh_key.hcloud_ssh_key_info| list | count >= 1 - name: test gather hcloud ssh key infos with correct label selector hcloud_ssh_key_info: label_selector: "key=value" register: hcloud_ssh_key - name: verify test gather hcloud ssh key infos with correct label selector assert: that: - hcloud_ssh_key.hcloud_ssh_key_info|selectattr('name','equalto','{{ hcloud_ssh_key_name }}') | list | count == 1 - name: test gather hcloud ssh key infos with wrong label selector hcloud_ssh_key_info: label_selector: "key!=value" register: hcloud_ssh_key - name: verify test gather hcloud ssh key infos with wrong label selector assert: that: - hcloud_ssh_key.hcloud_ssh_key_info | list | count == 0 - name: cleanup hcloud_ssh_key: name: "{{hcloud_ssh_key_name}}" state: absent register: result - name: verify cleanup assert: that: - result is success