kubevirt_vm_info: Add info module for VirtualMachines

This adds the kubevirt_vm_info module, which returns the same results as
the kubevirt_vm module, but is limited to read-only functionality.

Signed-off-by: Felix Matouschek <fmatouschek@redhat.com>
This commit is contained in:
Felix Matouschek
2023-09-05 18:11:19 +02:00
parent 6b360aa377
commit 6486766b11
8 changed files with 416 additions and 0 deletions

View File

@@ -0,0 +1,68 @@
---
- name: Create VM
connection: local
gather_facts: false
hosts: localhost
tasks:
- name: Create a VirtualMachine
kubevirt.core.kubevirt_vm:
name: testvm
namespace: default
instancetype:
name: u1.small
preference:
name: centos.9.stream
spec:
domain:
devices: {}
volumes:
- containerDisk:
image: quay.io/containerdisks/centos-stream:9
name: containerdisk
state: present
wait: true
wait_timeout: 600
- name: Describe created VM
connection: local
gather_facts: false
hosts: localhost
tasks:
- name: Describe a VirtualMachine
kubevirt.core.kubevirt_vm_info:
name: testvm
namespace: default
register: describe
- name: Assert module reported no changes
ansible.builtin.assert:
that:
- not describe.changed
- describe.resources | length == 1
- name: Delete VM
connection: local
gather_facts: false
hosts: localhost
tasks:
- name: Delete a VirtualMachine
kubevirt.core.kubevirt_vm:
name: testvm
namespace: default
state: absent
wait: true
- name: Verify VM deletion
connection: local
gather_facts: false
hosts: localhost
tasks:
- name: Delete a VirtualMachine
kubevirt.core.kubevirt_vm:
name: testvm
namespace: default
state: absent
register: delete
- name: Assert module reported no changes
ansible.builtin.assert:
that:
- not delete.changed

View File

@@ -0,0 +1,10 @@
#!/usr/bin/env bash
set -eux
set -o pipefail
{
export ANSIBLE_CALLBACKS_ENABLED=profile_tasks
ansible-playbook playbook.yml "$@"
} || {
exit 1
}