CI: Rework domU_config generation in qubes-x86-64.sh

Right now, various blocks rewrite domU_config= as a whole, even though it is
largely the same.

 * dom0pvh-hvm does nothing but change the domain type to hvm
 * *-pci sets the domain type, clears vif=[], appends earlyprintk=xen to the
   cmdline, and adds some PCI config.

Refactor this to be domU_type (defaults to pvh), domU_vif (defaults to
xenbr0), and domU_extra_config (defaults to empty) and use these variables to
build domU_config= once.

Of note, the default domU_config= now sets cmdline=, and extra= is intended
for inclusion via domU_extra_config as necessary.

No practical change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Reviewed-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
(cherry picked from commit 3be3ae0770)
This commit is contained in:
Andrew Cooper committed 2024-11-11 18:16:35 +00:00
1 parent 1dd4b60de1
commit 7e0ba9a387
1 file changed
+21 -29
+21 -29
View File
@@ -15,16 +15,9 @@ test_variant=$1
extra_xen_opts=
wait_and_wakeup=
timeout=120
domU_config='
type = "pvh"
name = "domU"
kernel = "/boot/vmlinuz"
ramdisk = "/boot/initrd-domU"
extra = "root=/dev/ram0 console=hvc0"
memory = 512
vif = [ "bridge=xenbr0", ]
disk = [ ]
'
domU_type="pvh"
domU_vif="'bridge=xenbr0',"
domU_extra_config=
case "${test_variant}" in
### test: smoke test & smoke test PVH & smoke test HVM
@@ -50,16 +43,7 @@ echo \"${passed}\"
fi
if [ "${test_variant}" = "dom0pvh-hvm" ]; then
domU_config='
type = "hvm"
name = "domU"
kernel = "/boot/vmlinuz"
ramdisk = "/boot/initrd-domU"
extra = "root=/dev/ram0 console=hvc0"
memory = 512
vif = [ "bridge=xenbr0", ]
disk = [ ]
'
domU_type="hvm"
fi
;;
@@ -101,15 +85,11 @@ echo \"${passed}\"
passed="pci test passed"
domU_config='
type = "'${test_variant#pci-}'"
name = "domU"
kernel = "/boot/vmlinuz"
ramdisk = "/boot/initrd-domU"
extra = "root=/dev/ram0 console=hvc0 earlyprintk=xen"
memory = 512
vif = [ ]
disk = [ ]
domU_type="${test_variant#pci-}"
domU_vif=""
domU_extra_config='
extra = "earlyprintk=xen"
pci = [ "'$PCIDEV',seize=1" ]
on_reboot = "destroy"
'
@@ -148,6 +128,18 @@ done
;;
esac
domU_config="
type = '${domU_type}'
name = 'domU'
kernel = '/boot/vmlinuz'
ramdisk = '/boot/initrd-domU'
cmdline = 'root=/dev/ram0 console=hvc0'
memory = 512
vif = [ ${domU_vif} ]
disk = [ ]
${domU_extra_config}
"
# DomU
mkdir -p rootfs
cd rootfs
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.