diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml index 59a2de28c8..51229cbe56 100644 --- a/automation/gitlab-ci/test.yaml +++ b/automation/gitlab-ci/test.yaml @@ -11,7 +11,9 @@ - project: xen-project/hardware/test-artifacts job: linux-6.6.86-arm64 ref: master - - alpine-3.18-arm64-rootfs-export + - project: xen-project/hardware/test-artifacts + job: alpine-3.18-arm64-rootfs + ref: master - qemu-system-aarch64-6.0.0-arm64-export .arm32-test-needs: &arm32-test-needs @@ -22,7 +24,7 @@ job: linux-6.6.56-x86_64 ref: master - project: xen-project/hardware/test-artifacts - job: x86_64-rootfs-alpine-3.18 + job: alpine-3.18-x86_64-rootfs ref: master .qemu-arm64: @@ -243,7 +245,7 @@ xilinx-smoke-dom0-x86_64-gcc-debug-argo: job: x86_64-kernel-linux-6.6.56 ref: master - project: xen-project/hardware/test-artifacts - job: x86_64-rootfs-alpine-3.18 + job: alpine-3.18-x86_64-rootfs ref: master - project: xen-project/hardware/test-artifacts job: x86_64-argo-linux-6.6.56 diff --git a/automation/scripts/qemu-alpine-x86_64.sh b/automation/scripts/qemu-alpine-x86_64.sh index 569bd766d3..c7dd121978 100755 --- a/automation/scripts/qemu-alpine-x86_64.sh +++ b/automation/scripts/qemu-alpine-x86_64.sh @@ -28,16 +28,14 @@ cd initrd find . | cpio -H newc -o | gzip > ../domU-rootfs.cpio.gz cd .. -# initrd.tar.gz is Dom0 rootfs +# Dom0 rootfs +cp rootfs.cpio.gz dom0-rootfs.cpio.gz + +# test-local configuration mkdir -p rootfs cd rootfs -tar xvzf ../initrd.tar.gz -mkdir proc -mkdir run -mkdir srv -mkdir sys -rm var/run cp -ar ../dist/install/* . +mkdir -p root etc/local.d mv ../domU-rootfs.cpio.gz ./root cp ../bzImage ./root echo "name=\"domU\" @@ -60,9 +58,7 @@ xl -vvv create -c /root/domU.cfg " > etc/local.d/xen.start chmod +x etc/local.d/xen.start -echo "rc_verbose=yes" >> etc/rc.conf -# rebuild Dom0 rootfs -find . | cpio -H newc -o | gzip > ../dom0-rootfs.cpio.gz +find . | cpio -H newc -o | gzip >> ../dom0-rootfs.cpio.gz cd ../.. cat >> binaries/pxelinux.0 << EOF diff --git a/automation/scripts/qemu-smoke-dom0-arm64.sh b/automation/scripts/qemu-smoke-dom0-arm64.sh index e8e49ded24..c0cf61ff8f 100755 --- a/automation/scripts/qemu-smoke-dom0-arm64.sh +++ b/automation/scripts/qemu-smoke-dom0-arm64.sh @@ -27,15 +27,14 @@ cd initrd find . | cpio -H newc -o | gzip > ../domU-rootfs.cpio.gz cd .. +# Dom0 rootfs +cp rootfs.cpio.gz dom0-rootfs.cpio.gz + +# test-local configuration mkdir -p rootfs cd rootfs -tar xvzf ../initrd.tar.gz -mkdir proc -mkdir run -mkdir srv -mkdir sys -rm var/run cp -ar ../dist/install/* . +mkdir -p etc/local.d root mv ../domU-rootfs.cpio.gz ./root cp ../Image ./root echo "name=\"domU\" @@ -56,8 +55,7 @@ xl -vvv create -c /root/domU.cfg " > etc/local.d/xen.start chmod +x etc/local.d/xen.start -echo "rc_verbose=yes" >> etc/rc.conf -find . | cpio -H newc -o | gzip > ../dom0-rootfs.cpio.gz +find . | cpio -H newc -o | gzip >> ../dom0-rootfs.cpio.gz cd ../.. # XXX QEMU looks for "efi-virtio.rom" even if it is unneeded diff --git a/automation/scripts/qemu-smoke-dom0less-arm64.sh b/automation/scripts/qemu-smoke-dom0less-arm64.sh index f72d209361..8e939f0b72 100755 --- a/automation/scripts/qemu-smoke-dom0less-arm64.sh +++ b/automation/scripts/qemu-smoke-dom0less-arm64.sh @@ -114,16 +114,14 @@ cd initrd find . | cpio --create --format='newc' | gzip > ../binaries/initrd cd .. -# DOM0 rootfs +# Dom0 rootfs +cp binaries/rootfs.cpio.gz binaries/dom0-rootfs.cpio.gz + +# test-local configuration mkdir -p rootfs cd rootfs -tar xzf ../binaries/initrd.tar.gz -mkdir proc -mkdir run -mkdir srv -mkdir sys -rm var/run cp -ar ../binaries/dist/install/* . +mkdir -p etc/local.d echo "#!/bin/bash @@ -142,8 +140,7 @@ xl network-attach 1 type=vif ${dom0_check} " > etc/local.d/xen.start chmod +x etc/local.d/xen.start -echo "rc_verbose=yes" >> etc/rc.conf -find . | cpio -H newc -o | gzip > ../binaries/dom0-rootfs.cpio.gz +find . | cpio -H newc -o | gzip >> ../binaries/dom0-rootfs.cpio.gz cd .. # ImageBuilder diff --git a/automation/scripts/qubes-x86-64.sh b/automation/scripts/qubes-x86-64.sh index c4be714642..e2376cb51c 100755 --- a/automation/scripts/qubes-x86-64.sh +++ b/automation/scripts/qubes-x86-64.sh @@ -164,16 +164,13 @@ ${domU_extra_config} " if [ -n "$domU_check" ]; then - # DomU + # DomU rootfs + cp binaries/rootfs.cpio.gz binaries/domU-rootfs.cpio.gz + + # test-local configuration mkdir -p rootfs cd rootfs - # fakeroot is needed to preserve device nodes in rootless podman container - fakeroot -s ../fakeroot-save tar xzf ../binaries/initrd.tar.gz - mkdir proc - mkdir run - mkdir srv - mkdir sys - rm var/run + mkdir -p etc/local.d echo "#!/bin/sh echo 8 > /proc/sys/kernel/printk @@ -181,26 +178,22 @@ echo 8 > /proc/sys/kernel/printk ${domU_check} " > etc/local.d/xen.start chmod +x etc/local.d/xen.start - echo "rc_verbose=yes" >> etc/rc.conf echo "domU Welcome to Alpine Linux Kernel \r on an \m (\l) " > etc/issue - find . | fakeroot -i ../fakeroot-save cpio -H newc -o | gzip > ../binaries/domU-rootfs.cpio.gz + find . | cpio -H newc -o | gzip >> ../binaries/domU-rootfs.cpio.gz cd .. rm -rf rootfs fi -# DOM0 rootfs +# Dom0 rootfs +cp binaries/rootfs.cpio.gz binaries/dom0-rootfs.cpio.gz + +# test-local configuration mkdir -p rootfs cd rootfs -fakeroot -s ../fakeroot-save tar xzf ../binaries/initrd.tar.gz -mkdir boot -mkdir proc -mkdir run -mkdir srv -mkdir sys -rm var/run +mkdir -p boot etc/local.d cp -ar ../binaries/dist/install/* . cp -ar ../binaries/tests . cp -a ../automation/scripts/run-tools-tests tests/ @@ -237,7 +230,6 @@ fi chmod +x etc/local.d/xen.start echo "$domU_config" > etc/xen/domU.cfg -echo "rc_verbose=yes" >> etc/rc.conf echo "XENCONSOLED_TRACE=all" >> etc/default/xencommons echo "QEMU_XEN=/bin/false" >> etc/default/xencommons mkdir -p var/log/xen/console @@ -245,7 +237,7 @@ cp ../binaries/bzImage boot/vmlinuz if [ -n "$domU_check" ]; then cp ../binaries/domU-rootfs.cpio.gz boot/initrd-domU fi -find . | fakeroot -i ../fakeroot-save cpio -H newc -o | gzip > ../binaries/dom0-rootfs.cpio.gz +find . | cpio -H newc -o | gzip >> ../binaries/dom0-rootfs.cpio.gz cd .. diff --git a/automation/scripts/xilinx-smoke-dom0-x86_64.sh b/automation/scripts/xilinx-smoke-dom0-x86_64.sh index 7e5382931b..1fc52d78db 100755 --- a/automation/scripts/xilinx-smoke-dom0-x86_64.sh +++ b/automation/scripts/xilinx-smoke-dom0-x86_64.sh @@ -80,6 +80,7 @@ argo-exec -l -p 28333 -- /bin/echo " copy_dom0_files () { + mkdir -p root usr/local/lib usr/local/bin cp "${WORKDIR}/binaries/xen-argo.ko" "root/" cp -ar "${WORKDIR}/binaries/lib/"* "usr/local/lib/" cp "${WORKDIR}/binaries/argo-exec" "usr/local/bin/" @@ -89,12 +90,13 @@ else fatal "Unknown test: ${TEST}" fi -# Set up domU rootfs. +# DomU rootfs +cp binaries/rootfs.cpio.gz binaries/domU-rootfs.cpio.gz + +# test-local configuration mkdir -p rootfs cd rootfs -tar xzf ../binaries/initrd.tar.gz -mkdir proc run srv sys -rm var/run +mkdir -p etc/local.d echo "#!/bin/sh set -x export LD_LIBRARY_PATH=/usr/local/lib @@ -102,22 +104,22 @@ PATH=/usr/local/bin:/usr/local/sbin:\$PATH ${DOMU_CMD} " > etc/local.d/xen.start chmod +x etc/local.d/xen.start -echo "rc_verbose=yes" >> etc/rc.conf echo "domU Welcome to Alpine Linux Kernel \r on an \m (\l) " > etc/issue copy_domU_files -find . | cpio -H newc -o | gzip > ../binaries/domU-rootfs.cpio.gz +find . | cpio -H newc -o | gzip >> ../binaries/domU-rootfs.cpio.gz cd .. rm -rf rootfs -# Set up dom0 rootfs. +# Dom0 rootfs +cp binaries/rootfs.cpio.gz binaries/dom0-rootfs.cpio.gz + +# test-local configuration mkdir -p rootfs cd rootfs -tar xzf ../binaries/initrd.tar.gz -mkdir boot proc run srv sys -rm var/run +mkdir -p boot etc/local.d cp -ar ../binaries/dist/install/* . echo "#!/bin/bash set -x @@ -127,14 +129,13 @@ ${DOM0_CMD} " > etc/local.d/xen.start chmod +x etc/local.d/xen.start echo "${DOMU_CFG}${DOMU_CFG_EXTRA}" > etc/xen/domU.cfg -echo "rc_verbose=yes" >> etc/rc.conf echo "XENCONSOLED_TRACE=all" >> etc/default/xencommons echo "QEMU_XEN=/bin/false" >> etc/default/xencommons mkdir -p var/log/xen/console cp ../binaries/bzImage boot/vmlinuz cp ../binaries/domU-rootfs.cpio.gz boot/initrd-domU copy_dom0_files -find . | cpio -H newc -o | gzip > ../binaries/dom0-rootfs.cpio.gz +find . | cpio -H newc -o | gzip >> ../binaries/dom0-rootfs.cpio.gz cd .. # Load software into TFTP server directory. @@ -147,7 +148,7 @@ echo " net_default_server=10.0.6.1 multiboot2 (tftp)/${TEST_BOARD}/xen ${XEN_CMDLINE} sync_console module2 (tftp)/${TEST_BOARD}/vmlinuz console=hvc0 root=/dev/ram0 earlyprintk=xen -module2 (tftp)/${TEST_BOARD}/initrd-dom0 +module2 --nounzip (tftp)/${TEST_BOARD}/initrd-dom0 boot " > ${TFTP}/${TEST_BOARD}/grub.cfg diff --git a/automation/scripts/xilinx-smoke-dom0less-arm64.sh b/automation/scripts/xilinx-smoke-dom0less-arm64.sh index 3e1fcf6bf9..a3031ecab0 100755 --- a/automation/scripts/xilinx-smoke-dom0less-arm64.sh +++ b/automation/scripts/xilinx-smoke-dom0less-arm64.sh @@ -38,36 +38,31 @@ echo \"${passed}\" " fi -# DomU +# DomU rootfs +cp binaries/rootfs.cpio.gz binaries/domU-rootfs.cpio.gz + +# test-local configuration mkdir -p rootfs cd rootfs -tar xzf ../binaries/initrd.tar.gz -mkdir proc -mkdir run -mkdir srv -mkdir sys -rm var/run +mkdir -p etc/local.d echo "#!/bin/sh ${domU_check} /bin/sh" > etc/local.d/xen.start chmod +x etc/local.d/xen.start -echo "rc_verbose=yes" >> etc/rc.conf -find . | cpio -H newc -o | gzip > ../binaries/domU-rootfs.cpio.gz +find . | cpio -H newc -o | gzip >> ../binaries/domU-rootfs.cpio.gz cd .. rm -rf rootfs -# DOM0 rootfs +# Dom0 rootfs +cp binaries/rootfs.cpio.gz binaries/dom0-rootfs.cpio.gz + +# test-local configuration mkdir -p rootfs cd rootfs -tar xzf ../binaries/initrd.tar.gz -mkdir proc -mkdir run -mkdir srv -mkdir sys -rm var/run cp -ar ../binaries/dist/install/* . +mkdir -p etc/local.d echo "#!/bin/bash export LD_LIBRARY_PATH=/usr/local/lib @@ -78,8 +73,7 @@ bash /etc/init.d/xencommons start ${dom0_check} " > etc/local.d/xen.start chmod +x etc/local.d/xen.start -echo "rc_verbose=yes" >> etc/rc.conf -find . | cpio -H newc -o | gzip > ../binaries/dom0-rootfs.cpio.gz +find . | cpio -H newc -o | gzip >> ../binaries/dom0-rootfs.cpio.gz cd ..