preseed: debian buster names interfaces differently than stretch and in a way that...
[noc.git] / ansible / roles / vm / install / tasks / main.yml
1 ---
2 - name: create disks for vm
3   with_dict: "{{ hostvars[hostname].install_cooked.disks.virtio | default({}) | combine(hostvars[hostname].install_cooked.disks.scsi | default({})) }}"
4   lvol:
5     vg: "{{ item.value.vg }}"
6     lv: "{{ item.value.lv }}"
7     size: "{{ item.value.size }}"
8
9
10 - block:
11     - name: create a temporary workdir
12       tempfile:
13         state: directory
14       register: tmpdir
15
16     - import_role:
17         name: preseed
18       vars:
19         ssh_users_root: "{{ hostvars[hostname].ssh_users_root }}"
20         preseed_tmpdir: "{{ tmpdir.path }}"
21         preseed_force_net_ifnames_policy: path
22         install_interface: enp1s1
23
24     - name: Make preseed workdir readable by qemu
25       acl:
26         path: "{{ tmpdir.path }}"
27         state: present
28         entity: libvirt-qemu
29         etype: user
30         permissions: rx
31
32     - import_role:
33         name: vm/define
34       vars:
35         vm_define_installer: yes
36         preseed_tmpdir: "{{ tmpdir.path }}"
37
38     - debug:
39         msg: "you can check on the status of the installer running this command 'virsh console {{ hostname }}' on host {{ inventory_hostname }}."
40
41     - name: wait for installer to finish or crash
42       wait_for_virt:
43         name: "{{ hostname }}"
44         states: shutdown,crashed
45         timeout: 900
46       register: installer_result
47       failed_when: installer_result.failed or installer_result.state == "crashed"
48
49   always:
50     - name: cleanup temporary workdir
51       file:
52         path: "{{ tmpdir.path }}"
53         state: absent
54
55 - import_role:
56     name: vm/define
57   vars:
58     vm_define_installer: no