testing: update ubuntu2004 to ubuntu2204
The 22.04 LTS release has been out for almost a year now so its time to update all the remaining images to the current LTS. We can also drop some hacks we need for older clang TSAN support. We will keep the ubuntu2004 container around for those who wish to test builds on the currently still supported baseline. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: John Snow <jsnow@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <20230228190653.1602033-9-alex.bennee@linaro.org>
This commit is contained in:
parent
7c7d369b33
commit
171080d891
@ -38,9 +38,9 @@ avocado-system-alpine:
|
|||||||
build-system-ubuntu:
|
build-system-ubuntu:
|
||||||
extends: .native_build_job_template
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-ubuntu2004-container
|
job: amd64-ubuntu2204-container
|
||||||
variables:
|
variables:
|
||||||
IMAGE: ubuntu2004
|
IMAGE: ubuntu2204
|
||||||
CONFIGURE_ARGS: --enable-docs
|
CONFIGURE_ARGS: --enable-docs
|
||||||
TARGETS: alpha-softmmu cris-softmmu hppa-softmmu
|
TARGETS: alpha-softmmu cris-softmmu hppa-softmmu
|
||||||
microblazeel-softmmu mips64el-softmmu
|
microblazeel-softmmu mips64el-softmmu
|
||||||
@ -56,7 +56,7 @@ check-system-ubuntu:
|
|||||||
- job: build-system-ubuntu
|
- job: build-system-ubuntu
|
||||||
artifacts: true
|
artifacts: true
|
||||||
variables:
|
variables:
|
||||||
IMAGE: ubuntu2004
|
IMAGE: ubuntu2204
|
||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
|
||||||
avocado-system-ubuntu:
|
avocado-system-ubuntu:
|
||||||
@ -65,7 +65,7 @@ avocado-system-ubuntu:
|
|||||||
- job: build-system-ubuntu
|
- job: build-system-ubuntu
|
||||||
artifacts: true
|
artifacts: true
|
||||||
variables:
|
variables:
|
||||||
IMAGE: ubuntu2004
|
IMAGE: ubuntu2204
|
||||||
MAKE_CHECK_ARGS: check-avocado
|
MAKE_CHECK_ARGS: check-avocado
|
||||||
|
|
||||||
build-system-debian:
|
build-system-debian:
|
||||||
@ -457,10 +457,10 @@ avocado-cfi-x86_64:
|
|||||||
tsan-build:
|
tsan-build:
|
||||||
extends: .native_build_job_template
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-ubuntu2004-container
|
job: amd64-ubuntu2204-container
|
||||||
variables:
|
variables:
|
||||||
IMAGE: ubuntu2004
|
IMAGE: ubuntu2204
|
||||||
CONFIGURE_ARGS: --enable-tsan --cc=clang-10 --cxx=clang++-10
|
CONFIGURE_ARGS: --enable-tsan --cc=clang --cxx=clang++
|
||||||
--enable-trace-backends=ust --disable-slirp
|
--enable-trace-backends=ust --disable-slirp
|
||||||
TARGETS: x86_64-softmmu ppc64-softmmu riscv64-softmmu x86_64-linux-user
|
TARGETS: x86_64-softmmu ppc64-softmmu riscv64-softmmu x86_64-linux-user
|
||||||
|
|
||||||
@ -468,10 +468,10 @@ tsan-build:
|
|||||||
gcov:
|
gcov:
|
||||||
extends: .native_build_job_template
|
extends: .native_build_job_template
|
||||||
needs:
|
needs:
|
||||||
job: amd64-ubuntu2004-container
|
job: amd64-ubuntu2204-container
|
||||||
timeout: 80m
|
timeout: 80m
|
||||||
variables:
|
variables:
|
||||||
IMAGE: ubuntu2004
|
IMAGE: ubuntu2204
|
||||||
CONFIGURE_ARGS: --enable-gcov
|
CONFIGURE_ARGS: --enable-gcov
|
||||||
TARGETS: aarch64-softmmu ppc64-softmmu s390x-softmmu x86_64-softmmu
|
TARGETS: aarch64-softmmu ppc64-softmmu s390x-softmmu x86_64-softmmu
|
||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check
|
||||||
|
@ -13,10 +13,10 @@ amd64-debian-container:
|
|||||||
variables:
|
variables:
|
||||||
NAME: debian-amd64
|
NAME: debian-amd64
|
||||||
|
|
||||||
amd64-ubuntu2004-container:
|
amd64-ubuntu2204-container:
|
||||||
extends: .container_job_template
|
extends: .container_job_template
|
||||||
variables:
|
variables:
|
||||||
NAME: ubuntu2004
|
NAME: ubuntu2204
|
||||||
|
|
||||||
amd64-opensuse-leap-container:
|
amd64-opensuse-leap-container:
|
||||||
extends: .container_job_template
|
extends: .container_job_template
|
||||||
|
@ -588,13 +588,13 @@ https://github.com/google/sanitizers/wiki/ThreadSanitizerCppManual
|
|||||||
|
|
||||||
Thread Sanitizer in Docker
|
Thread Sanitizer in Docker
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
TSan is currently supported in the ubuntu2004 docker.
|
TSan is currently supported in the ubuntu2204 docker.
|
||||||
|
|
||||||
The test-tsan test will build using TSan and then run make check.
|
The test-tsan test will build using TSan and then run make check.
|
||||||
|
|
||||||
.. code::
|
.. code::
|
||||||
|
|
||||||
make docker-test-tsan@ubuntu2004
|
make docker-test-tsan@ubuntu2204
|
||||||
|
|
||||||
TSan warnings under docker are placed in files located at build/tsan/.
|
TSan warnings under docker are placed in files located at build/tsan/.
|
||||||
|
|
||||||
|
@ -146,6 +146,3 @@ ENV LANG "en_US.UTF-8"
|
|||||||
ENV MAKE "/usr/bin/make"
|
ENV MAKE "/usr/bin/make"
|
||||||
ENV NINJA "/usr/bin/ninja"
|
ENV NINJA "/usr/bin/ninja"
|
||||||
ENV PYTHON "/usr/bin/python3"
|
ENV PYTHON "/usr/bin/python3"
|
||||||
# Apply patch https://reviews.llvm.org/D75820
|
|
||||||
# This is required for TSan in clang-10 to compile with QEMU.
|
|
||||||
RUN sed -i 's/^const/static const/g' /usr/lib/llvm-10/lib/clang/10.0.0/include/sanitizer/tsan_interface.h
|
|
||||||
|
147
tests/docker/dockerfiles/ubuntu2204.docker
Normal file
147
tests/docker/dockerfiles/ubuntu2204.docker
Normal file
@ -0,0 +1,147 @@
|
|||||||
|
# THIS FILE WAS AUTO-GENERATED
|
||||||
|
#
|
||||||
|
# $ lcitool dockerfile --layers all ubuntu-2204 qemu
|
||||||
|
#
|
||||||
|
# https://gitlab.com/libvirt/libvirt-ci
|
||||||
|
|
||||||
|
FROM docker.io/library/ubuntu:22.04
|
||||||
|
|
||||||
|
RUN export DEBIAN_FRONTEND=noninteractive && \
|
||||||
|
apt-get update && \
|
||||||
|
apt-get install -y eatmydata && \
|
||||||
|
eatmydata apt-get dist-upgrade -y && \
|
||||||
|
eatmydata apt-get install --no-install-recommends -y \
|
||||||
|
bash \
|
||||||
|
bc \
|
||||||
|
bison \
|
||||||
|
bsdextrautils \
|
||||||
|
bzip2 \
|
||||||
|
ca-certificates \
|
||||||
|
ccache \
|
||||||
|
clang \
|
||||||
|
dbus \
|
||||||
|
debianutils \
|
||||||
|
diffutils \
|
||||||
|
exuberant-ctags \
|
||||||
|
findutils \
|
||||||
|
flex \
|
||||||
|
g++ \
|
||||||
|
gcc \
|
||||||
|
gcovr \
|
||||||
|
genisoimage \
|
||||||
|
gettext \
|
||||||
|
git \
|
||||||
|
hostname \
|
||||||
|
libaio-dev \
|
||||||
|
libasan5 \
|
||||||
|
libasound2-dev \
|
||||||
|
libattr1-dev \
|
||||||
|
libbpf-dev \
|
||||||
|
libbrlapi-dev \
|
||||||
|
libbz2-dev \
|
||||||
|
libc6-dev \
|
||||||
|
libcacard-dev \
|
||||||
|
libcap-ng-dev \
|
||||||
|
libcapstone-dev \
|
||||||
|
libcmocka-dev \
|
||||||
|
libcurl4-gnutls-dev \
|
||||||
|
libdaxctl-dev \
|
||||||
|
libdrm-dev \
|
||||||
|
libepoxy-dev \
|
||||||
|
libfdt-dev \
|
||||||
|
libffi-dev \
|
||||||
|
libfuse3-dev \
|
||||||
|
libgbm-dev \
|
||||||
|
libgcrypt20-dev \
|
||||||
|
libglib2.0-dev \
|
||||||
|
libglusterfs-dev \
|
||||||
|
libgnutls28-dev \
|
||||||
|
libgtk-3-dev \
|
||||||
|
libibumad-dev \
|
||||||
|
libibverbs-dev \
|
||||||
|
libiscsi-dev \
|
||||||
|
libjemalloc-dev \
|
||||||
|
libjpeg-turbo8-dev \
|
||||||
|
libjson-c-dev \
|
||||||
|
liblttng-ust-dev \
|
||||||
|
liblzo2-dev \
|
||||||
|
libncursesw5-dev \
|
||||||
|
libnfs-dev \
|
||||||
|
libnuma-dev \
|
||||||
|
libpam0g-dev \
|
||||||
|
libpcre2-dev \
|
||||||
|
libpixman-1-dev \
|
||||||
|
libpmem-dev \
|
||||||
|
libpng-dev \
|
||||||
|
libpulse-dev \
|
||||||
|
librbd-dev \
|
||||||
|
librdmacm-dev \
|
||||||
|
libsasl2-dev \
|
||||||
|
libsdl2-dev \
|
||||||
|
libsdl2-image-dev \
|
||||||
|
libseccomp-dev \
|
||||||
|
libselinux1-dev \
|
||||||
|
libslirp-dev \
|
||||||
|
libsnappy-dev \
|
||||||
|
libsndio-dev \
|
||||||
|
libspice-protocol-dev \
|
||||||
|
libspice-server-dev \
|
||||||
|
libssh-dev \
|
||||||
|
libsystemd-dev \
|
||||||
|
libtasn1-6-dev \
|
||||||
|
libubsan1 \
|
||||||
|
libudev-dev \
|
||||||
|
liburing-dev \
|
||||||
|
libusb-1.0-0-dev \
|
||||||
|
libusbredirhost-dev \
|
||||||
|
libvdeplug-dev \
|
||||||
|
libvirglrenderer-dev \
|
||||||
|
libvte-2.91-dev \
|
||||||
|
libxen-dev \
|
||||||
|
libzstd-dev \
|
||||||
|
llvm \
|
||||||
|
locales \
|
||||||
|
make \
|
||||||
|
meson \
|
||||||
|
multipath-tools \
|
||||||
|
ncat \
|
||||||
|
nettle-dev \
|
||||||
|
ninja-build \
|
||||||
|
openssh-client \
|
||||||
|
pkgconf \
|
||||||
|
python3 \
|
||||||
|
python3-numpy \
|
||||||
|
python3-opencv \
|
||||||
|
python3-pillow \
|
||||||
|
python3-pip \
|
||||||
|
python3-sphinx \
|
||||||
|
python3-sphinx-rtd-theme \
|
||||||
|
python3-venv \
|
||||||
|
python3-yaml \
|
||||||
|
rpm2cpio \
|
||||||
|
sed \
|
||||||
|
socat \
|
||||||
|
sparse \
|
||||||
|
systemtap-sdt-dev \
|
||||||
|
tar \
|
||||||
|
tesseract-ocr \
|
||||||
|
tesseract-ocr-eng \
|
||||||
|
xfslibs-dev \
|
||||||
|
zlib1g-dev && \
|
||||||
|
eatmydata apt-get autoremove -y && \
|
||||||
|
eatmydata apt-get autoclean -y && \
|
||||||
|
sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \
|
||||||
|
dpkg-reconfigure locales && \
|
||||||
|
dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \
|
||||||
|
mkdir -p /usr/libexec/ccache-wrappers && \
|
||||||
|
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/c++ && \
|
||||||
|
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \
|
||||||
|
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
|
||||||
|
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/g++ && \
|
||||||
|
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
|
||||||
|
|
||||||
|
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
|
||||||
|
ENV LANG "en_US.UTF-8"
|
||||||
|
ENV MAKE "/usr/bin/make"
|
||||||
|
ENV NINJA "/usr/bin/ninja"
|
||||||
|
ENV PYTHON "/usr/bin/python3"
|
@ -21,7 +21,7 @@ setup_tsan()
|
|||||||
tsan_log_dir="/tmp/qemu-test/build/tsan"
|
tsan_log_dir="/tmp/qemu-test/build/tsan"
|
||||||
mkdir -p $tsan_log_dir > /dev/null || true
|
mkdir -p $tsan_log_dir > /dev/null || true
|
||||||
EXTRA_CONFIGURE_OPTS="${EXTRA_CONFIGURE_OPTS} --enable-tsan \
|
EXTRA_CONFIGURE_OPTS="${EXTRA_CONFIGURE_OPTS} --enable-tsan \
|
||||||
--cc=clang-10 --cxx=clang++-10 \
|
--cc=clang --cxx=clang++ \
|
||||||
--disable-werror --extra-cflags=-O0"
|
--disable-werror --extra-cflags=-O0"
|
||||||
# detect deadlocks is false currently simply because
|
# detect deadlocks is false currently simply because
|
||||||
# TSan crashes immediately with deadlock detector enabled.
|
# TSan crashes immediately with deadlock detector enabled.
|
||||||
|
@ -69,13 +69,6 @@ def generate_cirrus(target, trailer=None):
|
|||||||
generate(filename, cmd, trailer)
|
generate(filename, cmd, trailer)
|
||||||
|
|
||||||
|
|
||||||
ubuntu2004_tsanhack = [
|
|
||||||
"# Apply patch https://reviews.llvm.org/D75820\n",
|
|
||||||
"# This is required for TSan in clang-10 to compile with QEMU.\n",
|
|
||||||
"RUN sed -i 's/^const/static const/g' /usr/lib/llvm-10/lib/clang/10.0.0/include/sanitizer/tsan_interface.h\n"
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
# Netmap still needs to be manually built as it is yet to be packaged
|
# Netmap still needs to be manually built as it is yet to be packaged
|
||||||
# into a distro. We also add cscope and gtags which are used in the CI
|
# into a distro. We also add cscope and gtags which are used in the CI
|
||||||
# test
|
# test
|
||||||
@ -113,8 +106,8 @@ try:
|
|||||||
trailer="".join(debian11_extras))
|
trailer="".join(debian11_extras))
|
||||||
generate_dockerfile("fedora", "fedora-37")
|
generate_dockerfile("fedora", "fedora-37")
|
||||||
generate_dockerfile("opensuse-leap", "opensuse-leap-153")
|
generate_dockerfile("opensuse-leap", "opensuse-leap-153")
|
||||||
generate_dockerfile("ubuntu2004", "ubuntu-2004",
|
generate_dockerfile("ubuntu2004", "ubuntu-2004")
|
||||||
trailer="".join(ubuntu2004_tsanhack))
|
generate_dockerfile("ubuntu2204", "ubuntu-2204")
|
||||||
|
|
||||||
#
|
#
|
||||||
# Cross compiling builds
|
# Cross compiling builds
|
||||||
|
Loading…
Reference in New Issue
Block a user