ansible: Manage libvirt on CI 'hosts'
[lttng-ci.git] / automation / ansible / roles / libvirt / tasks / main.yml
1 ---
2 - name: Install virtualization packages
3 apt:
4 name: ['qemu-kvm', 'libvirt-daemon-system']
5 - name: Run libvirtd
6 systemd:
7 name: libvirtd
8 enabled: true
9 state: started
10 - name: Download ISOs
11 loop: "{{ isos }}"
12 get_url:
13 dest: "{{item.dest}}"
14 url: "{{item.url}}"
15 checksum: "{{item.checksum}}"
16 - name: Create VM disks
17 loop: "{{ lookup('vars', 'vms', default=[]) }}"
18 vars:
19 vm: "{{ vm_defaults | combine(item.vars) }}"
20 when: vm.disk != ""
21 shell:
22 cmd: "qemu-img create -f qcow2 {{vm.disk}} {{vm.disk_capacity}}"
23 creates: "{{vm.disk}}"
24 - name: Define VMs
25 # Note: is vm.uuid is not set and the template is changed, those changes will not be applied
26 # Note: many changes will require the VM to be destroyed then started again
27 community.libvirt.virt:
28 command: define
29 xml: "{{ lookup('template', item.template|default('vm_template.xml.j2')) }}"
30 autostart: true
31 loop: "{{ lookup('vars', 'vms', default=[]) }}"
32 vars:
33 vm: "{{ vm_defaults | combine(item.vars) }}"
This page took 0.029747 seconds and 4 git commands to generate.