File tree Expand file tree Collapse file tree 4 files changed +17
-10
lines changed Expand file tree Collapse file tree 4 files changed +17
-10
lines changed Original file line number Diff line number Diff line change @@ -113,6 +113,7 @@ Role Variables
113
113
` libvirt_volume_default_format ` are valid here. Default is
114
114
` libvirt_volume_default_format ` .
115
115
- ` image ` : (optional) a URL to an image with which the volume is initalised (full copy).
116
+ - ` checksum ` : (optional) checksum of the ` image ` to avoid download when it's not necessary.
116
117
- ` backing_image ` : (optional) name of the backing volume which is assumed to already be the same pool (copy-on-write).
117
118
- ` image ` and ` backing_image ` are mutually exclusive options.
118
119
- ` target ` : (optional) Manually influence type and order of volumes
Original file line number Diff line number Diff line change @@ -92,6 +92,10 @@ libvirt_vm_virsh_default_env: "{{ { 'LIBVIRT_DEFAULT_URI': libvirt_vm_uri } if
92
92
# Override for the libvirt connection uri. Leave unset to use the default.
93
93
libvirt_vm_uri : " "
94
94
95
+ # Whether to use sudo with libvirt commands, this can be disabled with qemu:///session
96
+ # to create VMs as an unprivileged user
97
+ libvirt_vm_sudo : true
98
+
95
99
# Default CPU mode if libvirt_vm_cpu_mode or vm.cpu_mode is undefined
96
100
libvirt_cpu_mode_default : " {{ 'host-passthrough' if libvirt_vm_engine == 'kvm' else 'host-model' }}"
97
101
Original file line number Diff line number Diff line change 8
8
recurse : true
9
9
mode : 0770
10
10
when : console_log_enabled | bool
11
- become : true
11
+ become : " {{ libvirt_vm_sudo }} "
12
12
13
13
- name : Validate VM interfaces
14
14
include_tasks : check-interface.yml
22
22
command : define
23
23
xml : " {{ lookup('template', vm.xml_file | default('vm.xml.j2')) }}"
24
24
uri : " {{ libvirt_vm_uri | default(omit, true) }}"
25
- become : true
25
+ become : " {{ libvirt_vm_sudo }} "
26
26
27
27
- name : Ensure the VM is running and started at boot
28
28
virt :
29
29
name : " {{ vm.name }}"
30
30
autostart : " {{ autostart | bool }}"
31
31
state : " {{ 'running' if (start | bool) else 'shutdown' }}"
32
32
uri : " {{ libvirt_vm_uri | default(omit, true) }}"
33
- become : true
33
+ become : " {{ libvirt_vm_sudo }} "
Original file line number Diff line number Diff line change 1
1
---
2
2
- name : Ensure remote images are downloaded
3
3
get_url :
4
- url : " {{ item }}"
5
- dest : " {{ libvirt_vm_image_cache_path }}/{{ item | basename }}"
6
- with_items : " {{ volumes | selectattr('image', 'defined') | map(attribute='image') | list }}"
7
- when : " 'http' in item"
4
+ url : " {{ item.image }}"
5
+ dest : " {{ libvirt_vm_image_cache_path }}/{{ item.image | basename }}"
6
+ checksum : " {{ item.checksum | default(omit) }}"
7
+ with_items : " {{ volumes | selectattr('image', 'defined') | list }}"
8
+ when : " 'http' in item.image"
8
9
9
10
- name : Ensure local images are copied
10
11
copy :
11
- src : " {{ item }}"
12
- dest : " {{ libvirt_vm_image_cache_path }}/{{ item | basename }}"
12
+ src : " {{ item.image }}"
13
+ dest : " {{ libvirt_vm_image_cache_path }}/{{ item.image | basename }}"
14
+ checksum : " {{ item.checksum | default(omit) }}"
13
15
remote_src : true
14
- with_items : " {{ volumes | selectattr('image', 'defined') | map(attribute='image') | list }}"
16
+ with_items : " {{ volumes | selectattr('image', 'defined') | list }}"
15
17
when : " 'http' not in item"
16
18
17
19
- name : Ensure the VM disk volumes exist
You can’t perform that action at this time.
0 commit comments