RHEL 9 (and thus also the derivatives) have been available since two
years now, so according to QEMU's support policy, we can drop the active
support for the previous major version 8 now.
Another reason for doing this is that Centos Stream 8 will go EOL soon:
https://blog.centos.org/2023/04/end-dates-are-coming-for-centos-stream-8-and-centos-linux-7/
"After May 31, 2024, CentOS Stream 8 will be archived
and no further updates will be provided."
Thus upgrade our CentOS Stream container to major version 9 now.
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-ID: <
20240418101056.302103-5-thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
- .native_build_job_template
- .native_build_artifact_template
needs:
- job: amd64-centos8-container
+ job: amd64-centos9-container
variables:
- IMAGE: centos8
+ IMAGE: centos9
CONFIGURE_ARGS: --disable-nettle --enable-gcrypt --enable-vfio-user-server
--enable-modules --enable-trace-backends=dtrace --enable-docs
TARGETS: ppc64-softmmu or1k-softmmu s390x-softmmu
- job: build-system-centos
artifacts: true
variables:
- IMAGE: centos8
+ IMAGE: centos9
MAKE_CHECK_ARGS: check
avocado-system-centos:
- job: build-system-centos
artifacts: true
variables:
- IMAGE: centos8
+ IMAGE: centos9
MAKE_CHECK_ARGS: check-avocado
AVOCADO_TAGS: arch:ppc64 arch:or1k arch:s390x arch:x86_64 arch:rx
arch:sh4
build-tcg-disabled:
extends: .native_build_job_template
needs:
- job: amd64-centos8-container
+ job: amd64-centos9-container
variables:
- IMAGE: centos8
+ IMAGE: centos9
script:
- mkdir build
- cd build
build-without-defaults:
extends: .native_build_job_template
needs:
- job: amd64-centos8-container
+ job: amd64-centos9-container
variables:
- IMAGE: centos8
+ IMAGE: centos9
CONFIGURE_ARGS:
--without-default-devices
--without-default-features
include:
- local: '/.gitlab-ci.d/container-template.yml'
-amd64-centos8-container:
+amd64-centos9-container:
extends: .container_job_template
variables:
- NAME: centos8
+ NAME: centos9
amd64-fedora-container:
extends: .container_job_template
+++ /dev/null
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool dockerfile --layers all centos-stream-8 qemu
-#
-# https://gitlab.com/libvirt/libvirt-ci
-
-FROM quay.io/centos/centos:stream8
-
-RUN dnf distro-sync -y && \
- dnf install 'dnf-command(config-manager)' -y && \
- dnf config-manager --set-enabled -y powertools && \
- dnf install -y centos-release-advanced-virtualization && \
- dnf install -y epel-release && \
- dnf install -y epel-next-release && \
- dnf install -y \
- SDL2-devel \
- alsa-lib-devel \
- bash \
- bc \
- bison \
- brlapi-devel \
- bzip2 \
- bzip2-devel \
- ca-certificates \
- capstone-devel \
- ccache \
- clang \
- ctags \
- cyrus-sasl-devel \
- daxctl-devel \
- dbus-daemon \
- device-mapper-multipath-devel \
- diffutils \
- findutils \
- flex \
- fuse3-devel \
- gcc \
- gcc-c++ \
- gettext \
- git \
- glib2-devel \
- glib2-static \
- glibc-langpack-en \
- glibc-static \
- glusterfs-api-devel \
- gnutls-devel \
- gtk3-devel \
- hostname \
- jemalloc-devel \
- json-c-devel \
- libaio-devel \
- libasan \
- libattr-devel \
- libbpf-devel \
- libcacard-devel \
- libcap-ng-devel \
- libcmocka-devel \
- libcurl-devel \
- libdrm-devel \
- libepoxy-devel \
- libfdt-devel \
- libffi-devel \
- libgcrypt-devel \
- libiscsi-devel \
- libjpeg-devel \
- libnfs-devel \
- libpmem-devel \
- libpng-devel \
- librbd-devel \
- libseccomp-devel \
- libselinux-devel \
- libslirp-devel \
- libssh-devel \
- libtasn1-devel \
- libubsan \
- liburing-devel \
- libusbx-devel \
- libxdp-devel \
- libzstd-devel \
- llvm \
- lttng-ust-devel \
- lzo-devel \
- make \
- mesa-libgbm-devel \
- mtools \
- ncurses-devel \
- nettle-devel \
- ninja-build \
- nmap-ncat \
- numactl-devel \
- openssh-clients \
- pam-devel \
- pcre-static \
- pipewire-devel \
- pixman-devel \
- pkgconfig \
- pulseaudio-libs-devel \
- python38 \
- python38-PyYAML \
- python38-numpy \
- python38-pip \
- python38-setuptools \
- python38-wheel \
- rdma-core-devel \
- sed \
- snappy-devel \
- socat \
- spice-protocol \
- spice-server-devel \
- swtpm \
- systemd-devel \
- systemtap-sdt-devel \
- tar \
- usbredir-devel \
- util-linux \
- virglrenderer-devel \
- vte291-devel \
- which \
- xfsprogs-devel \
- xorriso \
- zlib-devel \
- zlib-static \
- zstd && \
- dnf autoremove -y && \
- dnf clean all -y && \
- rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
- rpm -qa | sort > /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
-
-RUN /usr/bin/pip3.8 install \
- meson==0.63.2 \
- pillow \
- sphinx \
- sphinx-rtd-theme \
- tomli
-
-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.8"
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--- /dev/null
+# THIS FILE WAS AUTO-GENERATED
+#
+# $ lcitool dockerfile --layers all centos-stream-9 qemu
+#
+# https://gitlab.com/libvirt/libvirt-ci
+
+FROM quay.io/centos/centos:stream9
+
+RUN dnf distro-sync -y && \
+ dnf install 'dnf-command(config-manager)' -y && \
+ dnf config-manager --set-enabled -y crb && \
+ dnf install -y epel-release && \
+ dnf install -y epel-next-release && \
+ dnf install -y \
+ SDL2-devel \
+ alsa-lib-devel \
+ bash \
+ bc \
+ bison \
+ brlapi-devel \
+ bzip2 \
+ bzip2-devel \
+ ca-certificates \
+ capstone-devel \
+ ccache \
+ clang \
+ ctags \
+ cyrus-sasl-devel \
+ daxctl-devel \
+ dbus-daemon \
+ device-mapper-multipath-devel \
+ diffutils \
+ findutils \
+ flex \
+ fuse3-devel \
+ gcc \
+ gcc-c++ \
+ gettext \
+ git \
+ glib2-devel \
+ glib2-static \
+ glibc-langpack-en \
+ glibc-static \
+ gnutls-devel \
+ gtk3-devel \
+ hostname \
+ jemalloc-devel \
+ json-c-devel \
+ libaio-devel \
+ libasan \
+ libattr-devel \
+ libbpf-devel \
+ libcacard-devel \
+ libcap-ng-devel \
+ libcmocka-devel \
+ libcurl-devel \
+ libdrm-devel \
+ libepoxy-devel \
+ libfdt-devel \
+ libffi-devel \
+ libgcrypt-devel \
+ libiscsi-devel \
+ libjpeg-devel \
+ libnfs-devel \
+ libpmem-devel \
+ libpng-devel \
+ librbd-devel \
+ libseccomp-devel \
+ libselinux-devel \
+ libslirp-devel \
+ libssh-devel \
+ libtasn1-devel \
+ libubsan \
+ liburing-devel \
+ libusbx-devel \
+ libxdp-devel \
+ libzstd-devel \
+ llvm \
+ lttng-ust-devel \
+ lzo-devel \
+ make \
+ mesa-libgbm-devel \
+ meson \
+ mtools \
+ ncurses-devel \
+ nettle-devel \
+ ninja-build \
+ nmap-ncat \
+ numactl-devel \
+ openssh-clients \
+ pam-devel \
+ pcre-static \
+ pipewire-devel \
+ pixman-devel \
+ pkgconfig \
+ pulseaudio-libs-devel \
+ python3 \
+ python3-PyYAML \
+ python3-numpy \
+ python3-pillow \
+ python3-pip \
+ python3-sphinx \
+ python3-sphinx_rtd_theme \
+ python3-tomli \
+ rdma-core-devel \
+ sed \
+ snappy-devel \
+ socat \
+ spice-protocol \
+ swtpm \
+ systemd-devel \
+ systemtap-sdt-devel \
+ tar \
+ usbredir-devel \
+ util-linux \
+ vte291-devel \
+ which \
+ xfsprogs-devel \
+ xorriso \
+ zlib-devel \
+ zlib-static \
+ zstd && \
+ dnf autoremove -y && \
+ dnf clean all -y && \
+ rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
+ rpm -qa | sort > /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"
+# As a final step configure the user (if env is defined)
+ARG USER
+ARG UID
+RUN if [ "${USER}" ]; then \
+ id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
mappings:
flake8:
- CentOSStream8:
OpenSUSELeap15:
meson:
- CentOSStream8:
OpenSUSELeap15:
python3:
- CentOSStream8: python38
OpenSUSELeap15: python311-base
python3-PyYAML:
- CentOSStream8: python38-PyYAML
OpenSUSELeap15:
python3-devel:
- CentOSStream8: python38-devel
OpenSUSELeap15: python311-devel
python3-docutils:
- CentOSStream8:
OpenSUSELeap15:
python3-numpy:
- CentOSStream8: python38-numpy
OpenSUSELeap15:
python3-opencv:
- CentOSStream8:
OpenSUSELeap15:
python3-pillow:
- CentOSStream8:
OpenSUSELeap15:
python3-pip:
- CentOSStream8: python38-pip
OpenSUSELeap15: python311-pip
python3-pillow:
- CentOSStream8:
OpenSUSELeap15:
python3-selinux:
- CentOSStream8:
OpenSUSELeap15:
python3-setuptools:
- CentOSStream8: python38-setuptools
OpenSUSELeap15: python311-setuptools
python3-sphinx:
- CentOSStream8:
OpenSUSELeap15:
python3-sphinx-rtd-theme:
- CentOSStream8:
OpenSUSELeap15:
python3-sqlite3:
- CentOSStream8: python38
OpenSUSELeap15: python311
python3-tomli:
Fedora:
Debian12:
OpenSUSELeap15:
- # Not available for Python 3.8
- CentOSStream8:
python3-venv:
- CentOSStream8: python38
OpenSUSELeap15: python311-base
python3-wheel:
- CentOSStream8: python38-wheel
OpenSUSELeap15: python311-pip
pypi_mappings:
# Standard native builds
#
generate_dockerfile("alpine", "alpine-318")
- generate_dockerfile("centos8", "centos-stream-8")
+ generate_dockerfile("centos9", "centos-stream-9")
generate_dockerfile("debian", "debian-12",
trailer="".join(debian12_extras))
generate_dockerfile("fedora", "fedora-38")
export SRC_ARCHIVE=/dev/vdb;
sudo chmod a+r $SRC_ARCHIVE;
tar -xf $SRC_ARCHIVE;
- make docker-test-block@centos8 {verbose} J={jobs} NETWORK=1;
- make docker-test-quick@centos8 {verbose} J={jobs} NETWORK=1;
+ make docker-test-block@centos9 {verbose} J={jobs} NETWORK=1;
+ make docker-test-quick@centos9 {verbose} J={jobs} NETWORK=1;
"""
def build_image(self, img):