summaryrefslogtreecommitdiff
path: root/roles/vm/host/base/tasks/main.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/vm/host/base/tasks/main.yml')
-rw-r--r--roles/vm/host/base/tasks/main.yml49
1 files changed, 49 insertions, 0 deletions
diff --git a/roles/vm/host/base/tasks/main.yml b/roles/vm/host/base/tasks/main.yml
new file mode 100644
index 00000000..1a7cb7d8
--- /dev/null
+++ b/roles/vm/host/base/tasks/main.yml
@@ -0,0 +1,49 @@
+---
+- name: install dependencies
+ apt:
+ name:
+ - qemu-kvm
+ - # configuration package, pulls in libvirt-clients and libvirt-daemon
+ libvirt-daemon-system
+ - python-libvirt
+ - haveged
+ - bridge-utils
+ - acl
+ state: present
+
+- name: configure haveged
+ lineinfile:
+ regexp: "^#?DAEMON_ARGS"
+ line: 'DAEMON_ARGS="-w 3072"'
+ path: /etc/default/haveged
+ notify: restart haveged
+
+- name: prepare zfs volumes
+ when: "'zfs' in vm_host"
+ include_tasks: zfs.yml
+
+- name: create lvm-based disk for installers
+ when: installer_lvm is defined
+ block:
+ - name: create logical volume
+ lvol:
+ vg: "{{ installer_lvm.vg }}"
+ lv: "{{ installer_lvm.lv }}"
+ size: "{{ installer_lvm.size }}"
+
+ - name: create filesystem
+ filesystem:
+ fstype: "{{ installer_lvm.fs }}"
+ dev: "/dev/mapper/{{ installer_lvm.vg | replace('-', '--') }}-{{ installer_lvm.lv | replace('-', '--') }}"
+
+ - name: mount filesytem
+ mount:
+ src: "/dev/mapper/{{ installer_lvm.vg | replace('-', '--') }}-{{ installer_lvm.lv | replace('-', '--') }}"
+ path: "{{ installer_base_path }}"
+ fstype: "{{ installer_lvm.fs }}"
+ state: mounted
+
+- name: make sure installer directory exists
+ file:
+ name: "{{ installer_base_path }}"
+ state: directory