summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2022-01-05 00:34:50 +0100
committerChristian Pointner <equinox@spreadspace.org>2022-01-05 00:34:50 +0100
commit657224ccfea9fcde88875aa74e7ed00570ee586b (patch)
treeee77a8c160adee6805090e3dc302b70bd92eea2e /common
parentMerge branch 'topic/openwrt-vm' (diff)
vm/deploy: improved handling of primary disk
Diffstat (limited to 'common')
-rw-r--r--common/vm-deploy.yml16
1 files changed, 13 insertions, 3 deletions
diff --git a/common/vm-deploy.yml b/common/vm-deploy.yml
index bc2e8039..5368df3e 100644
--- a/common/vm-deploy.yml
+++ b/common/vm-deploy.yml
@@ -8,19 +8,29 @@
fail:
msg: "the host '{{ install_hostname }}' does not belong to the group 'kvmguests'"
when:
- - "'kvmguests' not in group_names"
+ - "'kvmguests' not in group_names"
- name: check if the host system belongs to the kvmhosts group
fail:
msg: "the host '{{ vm_host.name }}' does not belong to the group 'kvmhosts'"
when:
- - "'kvmhosts' not in hostvars[vm_host.name].group_names"
+ - "'kvmhosts' not in hostvars[vm_host.name].group_names"
- name: check if there is only one output image
fail:
msg: "the output_images variable must only contain a single image"
when:
- - (output_images | length) != 1
+ - (output_images | length) != 1
+
+ - name: get primary disk config
+ set_fact:
+ vm_deploy_primary_disk: "{{ (install.disks.virtio | default({}) | combine(install.disks.scsi | default({})))[(install.disks.primary | basename)] | default({'type': ''}) }}"
+
+ - name: check if primary disk is of type image
+ fail:
+ msg: "the primary disk must be pointing to a disk device of type image"
+ when:
+ - vm_deploy_primary_disk.type != 'image'
- name: deploy vm