[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v3 01/12] automation: add a QEMU aarch64 smoke test
On Tue, Nov 24, 2020 at 08:27:34PM -0800, Stefano Stabellini wrote: > Use QEMU to start Xen (just the hypervisor) up until it stops because > there is no dom0 kernel to boot. > > It is based on the existing build job unstable-arm64v8. > > Also use make -j$(nproc) to build Xen. > > Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxx> > --- > Changes in v2: > - fix x86_32 build > --- > automation/gitlab-ci/test.yaml | 22 ++++++++++++++++++ > automation/scripts/build | 6 ++--- > automation/scripts/qemu-smoke-arm64.sh | 32 ++++++++++++++++++++++++++ > 3 files changed, 57 insertions(+), 3 deletions(-) > create mode 100755 automation/scripts/qemu-smoke-arm64.sh > > diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml > index 793feafe8b..35346e3f6e 100644 > --- a/automation/gitlab-ci/test.yaml > +++ b/automation/gitlab-ci/test.yaml > @@ -22,6 +22,28 @@ build-each-commit-gcc: > - /^coverity-tested\/.*/ > - /^stable-.*/ > > +qemu-smoke-arm64-gcc: > + stage: test > + image: registry.gitlab.com/xen-project/xen/${CONTAINER} > + variables: > + CONTAINER: debian:unstable-arm64v8 > + script: > + - ./automation/scripts/qemu-smoke-arm64.sh 2>&1 | tee > qemu-smoke-arm64.log > + dependencies: > + - debian-unstable-gcc-arm64 > + artifacts: > + paths: > + - smoke.serial > + - '*.log' > + when: always > + tags: > + - arm64 > + except: > + - master > + - smoke > + - /^coverity-tested\/.*/ > + - /^stable-.*/ > + > qemu-smoke-x86-64-gcc: > stage: test > image: registry.gitlab.com/xen-project/xen/${CONTAINER} > diff --git a/automation/scripts/build b/automation/scripts/build > index 0cd0f3971d..7038e5eb50 100755 > --- a/automation/scripts/build > +++ b/automation/scripts/build > @@ -10,9 +10,9 @@ cc-ver() > > # random config or default config > if [[ "${RANDCONFIG}" == "y" ]]; then > - make -C xen KCONFIG_ALLCONFIG=tools/kconfig/allrandom.config randconfig > + make -j$(nproc) -C xen KCONFIG_ALLCONFIG=tools/kconfig/allrandom.config > randconfig > else > - make -C xen defconfig > + make -j$(nproc) -C xen defconfig > fi > > # build up our configure options > @@ -45,7 +45,7 @@ make -j$(nproc) dist > # Extract artifacts to avoid getting rewritten by customised builds > cp xen/.config xen-config > mkdir binaries > -if [[ "${XEN_TARGET_ARCH}" == "x86_64" ]]; then > +if [[ "${XEN_TARGET_ARCH}" != "x86_32" ]]; then > cp xen/xen binaries/xen > fi > > diff --git a/automation/scripts/qemu-smoke-arm64.sh > b/automation/scripts/qemu-smoke-arm64.sh > new file mode 100755 > index 0000000000..a7efbf8b6f > --- /dev/null > +++ b/automation/scripts/qemu-smoke-arm64.sh > @@ -0,0 +1,32 @@ > +#!/bin/bash > + > +set -ex > + > +# Install QEMU > +export DEBIAN_FRONTENT=noninteractive > +apt-get -qy update > +apt-get -qy install --no-install-recommends qemu-system-aarch64 \ > + u-boot-qemu > + > +# XXX Silly workaround to get the following QEMU command to work > +cp /usr/share/qemu/pvh.bin /usr/share/qemu/efi-virtio.rom Can you explain a bit more why this workaround works at all? Not a blocking comment, but this will help other people who try to modify this script. Wei.
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |