fix qemu vm not installing

autoautoinstall
Daniel Liu 1 year ago
parent c1fb658ba3
commit f72458a7b6
  1. 9
      group_vars/all.yml
  2. 3
      qemu/main.yml
  3. 36
      qemu/run.yml

@ -1,6 +1,7 @@
---
ovmf:
vm_ram: 1G
vm_disk_size: 9G
vm_ssh_port: 22
# set this depending on your system
ovmf: /usr/share/edk2-ovmf/x64/OVMF_CODE.fd
vm_ram: 3G
vm_disk_size: 10G
vm_ssh_port: 7777 # vm doesn't seem to start with 22, leaving this here for now
userdata: "{{playbook_dir}}/userdata"

@ -2,6 +2,7 @@
# Gather info
- hosts: localhost
tasks:
# make this check for the actual drive* files probably
- name: Check if vm was created already
stat:
path: "{{userdata}}"
@ -30,7 +31,7 @@
command: curl -o "{{playbook_dir}}/files/ubuntu20_04.iso" https://releases.ubuntu.com/20.04.3/ubuntu-20.04.3-live-server-amd64.iso
when: isoexists.stat.exists == false
- name: Create disk images
- name: "Create disk images"
shell:
cmd: "for i in {1..6}; do qemu-img create -f qcow2 {{userdata}}/drive${i} {{vm_disk_size}}; done"
when: vmexists.stat.exists == false

@ -1,18 +1,20 @@
---
- name: Start VM
# async: 10000
# poll: 0
shell:
cmd: "qemu-system-x86_64 \
-enable-kvm -boot order=d \
-drive file={{userdata}}/drive1,if=virtio,id=a,media=disk,format=qcow2 \
-drive file={{userdata}}/drive2,if=virtio,id=b,media=disk,format=qcow2 \
-drive file={{userdata}}/drive3,if=virtio,id=c,media=disk,format=qcow2 \
-drive file={{userdata}}/drive4,if=virtio,id=d,media=disk,format=qcow2 \
-drive file={{userdata}}/drive5,if=virtio,id=e,media=disk,format=qcow2 \
-drive file={{userdata}}/drive6,if=virtio,id=f,media=disk,format=qcow2 \
-drive file={{userdata}}/seed.iso,if=virtio,format=raw \
-bios {{ovmf}} \
-m {{vm_ram}} \
-net user,hostfwd=tcp::{{vm_ssh_port}}-:22 \
-net nic"
- hosts: localhost
tasks:
- name: Start VM
# async: 10000
# poll: 0
shell:
cmd: "qemu-system-x86_64 \
-enable-kvm -boot order=d \
-drive file={{userdata}}/drive1,if=virtio,id=a,media=disk,format=qcow2 \
-drive file={{userdata}}/drive2,if=virtio,id=b,media=disk,format=qcow2 \
-drive file={{userdata}}/drive3,if=virtio,id=c,media=disk,format=qcow2 \
-drive file={{userdata}}/drive4,if=virtio,id=d,media=disk,format=qcow2 \
-drive file={{userdata}}/drive5,if=virtio,id=e,media=disk,format=qcow2 \
-drive file={{userdata}}/drive6,if=virtio,id=f,media=disk,format=qcow2 \
-drive file={{userdata}}/seed.iso,if=virtio,format=raw \
-bios {{ovmf}} \
-m {{vm_ram}} \
-net user,hostfwd=tcp::{{vm_ssh_port}}-:22 \
-net nic"

Loading…
Cancel
Save