From b05ebe80138d6710a23acfb6379f6f6b78793857 Mon Sep 17 00:00:00 2001 From: Daniel Liu Date: Wed, 29 Sep 2021 19:49:39 -0400 Subject: [PATCH] true autoinstall --- qemu/main.yml | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/qemu/main.yml b/qemu/main.yml index 84095e6..6449191 100644 --- a/qemu/main.yml +++ b/qemu/main.yml @@ -13,11 +13,21 @@ path: "{{playbook_dir}}/files/ubuntu20_04.iso" register: isoexists ignore_errors: true - - name: Check for ubuntu iso seed + - name: Check for seed iso stat: path: "{{userdata}}/seed.iso" register: seedexists ignore_errors: true + - name: Check for extracted linux kernel + stat: + path: "{{userdata}}/vmlinuz" + register: kernelexists + ignore_errors: true + - name: Check for extracted initrd + stat: + path: "{{userdata}}/initrd" + register: initrdexists + ignore_errors: true # Setting up VM - name: Create directory for VM @@ -40,6 +50,16 @@ command: "genisoimage -output {{userdata}}/seed.iso -volid cidata -joliet -rock {{playbook_dir}}/files/user-data {{playbook_dir}}/files/meta-data" when: seedexists.stat.exists == false + - name: Extracting linux kernel from iso + shell: + cmd: "isoinfo -i {{playbook_dir}}/files/ubuntu20_04.iso -R -x /casper/vmlinuz > {{userdata}}/vmlinuz" + when: kernelexists.stat.exists == false + + - name: Extracting initrd from iso + shell: + cmd: "isoinfo -i {{playbook_dir}}/files/ubuntu20_04.iso -R -x /casper/initrd > {{userdata}}/initrd" + when: initrdexists.stat.exists == false + - name: Starting autoinstallation shell: cmd: "qemu-system-x86_64 -cdrom {{playbook_dir}}/files/ubuntu20_04.iso \ @@ -52,7 +72,9 @@ -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}}" + -m {{vm_ram}} \ + -kernel {{userdata}}/vmlinuz \ + -initrd {{userdata}}/initrd \ + -append autoinstall" - # todo: find a way to not ask for confirmation to start autoinstall # bug: autoinstall will not shutdown properly so the ansible task will never finish