Hello,
creating a VM with QCOW2 disk is as easy as that. The only requirement to run this is having QCOW2 disk named "centos7" in your engine:
---
- hosts: localhost
gather_facts: false
tasks:
- name: Obtain SSO token
ovirt_auth:
url: https://<engine_fqdn>/ovirt-engine/api
username: admin@internal
password: <pass>
- name: Create a VM with QCOW2 disk
ovirt_vm:
auth: "{{ ovirt_auth }}"
state: present
cluster: Default
name: jzmeskal_centos7
disks:
- name: centos7
bootable: True
Now if you'd like to use cloud-init, that's a different story and you probably won't get around using templates. From the Ansible point of view, it's quite easy - you just use cloud_init key of ovirt_vm module. However for that to work, your VM has to be either created with a disk that has cloud-init package installed or created from a template that is cloud-init enabled. See my response from December here. Another user was interested in pretty much the same topic.
Hope this helps!
Jan