From 7bd0077aa82f2f67997f552b4fa353aaf4e36601 Mon Sep 17 00:00:00 2001 From: Danny Bessems Date: Sat, 26 Jul 2025 22:14:46 +1000 Subject: [PATCH] build: Start libvirt daemon in container and debug kvm acceleration --- .gitea/workflows/actions.yaml | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/.gitea/workflows/actions.yaml b/.gitea/workflows/actions.yaml index 8513de0..2341e85 100644 --- a/.gitea/workflows/actions.yaml +++ b/.gitea/workflows/actions.yaml @@ -54,6 +54,12 @@ jobs: run: | mkdir -p \ ubuntu-vm + - name: Assert source Ubuntu ISO + run: | + # TODO: Make this path configurable in a yaml file + [[ ! -f '/iso/Canonical/Ubuntu Server 24.04/ubuntu-24.04.2-desktop-amd64.iso' ]] || { + echo 'Missing source iso file - exiting'; exit 1 + } - name: Generate seed ISO run: | apt-get update && \ @@ -72,12 +78,6 @@ jobs: env: ROOT_HASHED_PASSWORD: ${{ secrets.ROOT_HASHED_PASSWORD }} PUBLIC_SSHKEY: ${{ secrets.PUBLIC_SSHKEY }} - - name: Assert source Ubuntu ISO - run: | - # TODO: Make this path configurable in a yaml file - [[ ! -f '/iso/Canonical/Ubuntu Server 24.04/ubuntu-24.04.2-desktop-amd64.iso' ]] || { - echo 'Missing source iso file - exiting'; exit 1 - } - name: Create empty QCOW2 disk run: | apt-get update && \ @@ -86,10 +86,20 @@ jobs: qemu-img create -f qcow2 ubuntu-vm/ubuntu.qcow2 10G - name: Run virt-install + # container: quay.io/kubevirt/libvirt run: | apt-get update && \ apt-get install -y \ - virtinst + libvirt-daemon-system \ + libvirt-clients \ + virtinst \ + qemu-utils + + libvirtd -d + + qemu-system-x86_64 -accel kvm -cpu host -m 512 -nographic -drive file=/dev/null,if=virtio + + ln -s "/iso/Canonical/Ubuntu Server 24.04/ubuntu-24.04.2-desktop-amd64.iso" ubuntu-vm/ubuntu.iso virt-install \ --name ubuntu-harvester \ @@ -97,7 +107,7 @@ jobs: --vcpus 2 \ --disk path=ubuntu-vm/ubuntu.qcow2,size=10,format=qcow2 \ --disk path=ubuntu-vm/seed.iso,device=cdrom \ - --cdrom '/iso/Canonical/Ubuntu Server 24.04/ubuntu-24.04.2-desktop-amd64.iso' \ + --cdrom ubuntu-vm/ubuntu.iso \ --os-variant ubuntu24.04 \ --graphics none \ --network network=default \