@@ -7,6 +7,6 @@ MAKE='/usr/local/bin/gmake'
NINJA='/usr/local/bin/ninja'
PACKAGING_COMMAND='pkg'
PIP3='/usr/local/bin/pip-3.8'
-PKGS='alsa-lib bash bison bzip2 ca_root_nss capstone4 ccache cdrkit-genisoimage cmocka ctags curl cyrus-sasl dbus diffutils dtc flex fusefs-libs3 gettext git glib gmake gnutls gsed gtk3 json-c libepoxy libffi libgcrypt libjpeg-turbo libnfs libslirp libspice-server libssh libtasn1 llvm lzo2 meson ncurses nettle ninja opencv perl5 pixman pkgconf png py39-numpy py39-pillow py39-pip py39-sphinx py39-sphinx_rtd_theme py39-yaml python3 rpm2cpio sdl2 sdl2_image snappy sndio spice-protocol tesseract texinfo usbredir virglrenderer vte3 zstd'
+PKGS='alsa-lib bash bison bzip2 ca_root_nss capstone4 ccache cdrkit-genisoimage cmocka ctags curl cyrus-sasl dbus diffutils dtc flex fusefs-libs3 gettext git glib gmake gnutls gsed gtk3 json-c libepoxy libffi libgcrypt libjpeg-turbo libnfs libslirp libspice-server libssh libtasn1 llvm lzo2 meson ncurses nettle ninja opencv perl5 pixman pkgconf png py39-docutils py39-numpy py39-pillow py39-pip py39-sphinx py39-sphinx_rtd_theme py39-yaml python3 rpm2cpio sdl2 sdl2_image snappy sndio spice-protocol tesseract texinfo usbredir virglrenderer vte3 zstd'
PYPI_PKGS=''
PYTHON='/usr/local/bin/python3'
@@ -7,6 +7,6 @@ MAKE='/usr/local/bin/gmake'
NINJA='/usr/local/bin/ninja'
PACKAGING_COMMAND='pkg'
PIP3='/usr/local/bin/pip-3.8'
-PKGS='alsa-lib bash bison bzip2 ca_root_nss capstone4 ccache cdrkit-genisoimage cmocka ctags curl cyrus-sasl dbus diffutils dtc flex fusefs-libs3 gettext git glib gmake gnutls gsed gtk3 json-c libepoxy libffi libgcrypt libjpeg-turbo libnfs libslirp libspice-server libssh libtasn1 llvm lzo2 meson ncurses nettle ninja opencv perl5 pixman pkgconf png py39-numpy py39-pillow py39-pip py39-sphinx py39-sphinx_rtd_theme py39-yaml python3 rpm2cpio sdl2 sdl2_image snappy sndio spice-protocol tesseract texinfo usbredir virglrenderer vte3 zstd'
+PKGS='alsa-lib bash bison bzip2 ca_root_nss capstone4 ccache cdrkit-genisoimage cmocka ctags curl cyrus-sasl dbus diffutils dtc flex fusefs-libs3 gettext git glib gmake gnutls gsed gtk3 json-c libepoxy libffi libgcrypt libjpeg-turbo libnfs libslirp libspice-server libssh libtasn1 llvm lzo2 meson ncurses nettle ninja opencv perl5 pixman pkgconf png py39-docutils py39-numpy py39-pillow py39-pip py39-sphinx py39-sphinx_rtd_theme py39-yaml python3 rpm2cpio sdl2 sdl2_image snappy sndio spice-protocol tesseract texinfo usbredir virglrenderer vte3 zstd'
PYPI_PKGS=''
PYTHON='/usr/local/bin/python3'
@@ -7,6 +7,6 @@ MAKE='/opt/homebrew/bin/gmake'
NINJA='/opt/homebrew/bin/ninja'
PACKAGING_COMMAND='brew'
PIP3='/opt/homebrew/bin/pip3'
-PKGS='bash bc bison bzip2 capstone ccache cmocka ctags curl dbus diffutils dtc flex gcovr gettext git glib gnu-sed gnutls gtk+3 jemalloc jpeg-turbo json-c libepoxy libffi libgcrypt libiscsi libnfs libpng libslirp libssh libtasn1 libusb llvm lzo make meson ncurses nettle ninja perl pixman pkg-config python3 rpm2cpio sdl2 sdl2_image snappy sparse spice-protocol tesseract texinfo usbredir vde vte3 zlib zstd'
+PKGS='bash bc bison bzip2 capstone ccache cmocka ctags curl dbus diffutils docutils dtc flex gcovr gettext git glib gnu-sed gnutls gtk+3 jemalloc jpeg-turbo json-c libepoxy libffi libgcrypt libiscsi libnfs libpng libslirp libssh libtasn1 libusb llvm lzo make meson ncurses nettle ninja perl pixman pkg-config python3 rpm2cpio sdl2 sdl2_image snappy sparse spice-protocol tesseract texinfo usbredir vde vte3 zlib zstd'
PYPI_PKGS='PyYAML numpy pillow sphinx sphinx-rtd-theme'
PYTHON='/opt/homebrew/bin/python3'
@@ -157,7 +157,7 @@
- nmap-ncat
- perl-Test-Harness
- pixman-devel
- - python36
+ - '@python:3.8/python38'
- rdma-core-devel
- spice-glib-devel
- systemtap-sdt-devel
@@ -77,6 +77,7 @@ RUN apk update && \
pixman-dev \
pkgconf \
pulseaudio-dev \
+ py3-docutils \
py3-numpy \
py3-pillow \
py3-pip \
@@ -78,7 +78,6 @@ RUN dnf distro-sync -y && \
lzo-devel \
make \
mesa-libgbm-devel \
- meson \
ncurses-devel \
nettle-devel \
ninja-build \
@@ -91,13 +90,12 @@ RUN dnf distro-sync -y && \
pixman-devel \
pkgconfig \
pulseaudio-libs-devel \
- python3 \
- python3-PyYAML \
- python3-numpy \
- python3-pillow \
- python3-pip \
- python3-sphinx \
- python3-sphinx_rtd_theme \
+ python38 \
+ python38-PyYAML \
+ python38-numpy \
+ python38-pip \
+ python38-setuptools \
+ python38-wheel \
rdma-core-devel \
rpm \
sed \
@@ -126,8 +124,15 @@ RUN dnf distro-sync -y && \
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 \
+ 'docutils<0.18' \
+ meson==0.63.2 \
+ pillow \
+ sphinx \
+ sphinx-rtd-theme
+
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"
+ENV PYTHON "/usr/bin/python3.8"
@@ -39,6 +39,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
perl-base \
pkgconf \
python3 \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -107,6 +107,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
perl-base \
pkgconf \
python3 \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -39,6 +39,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
perl-base \
pkgconf \
python3 \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -39,6 +39,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
perl-base \
pkgconf \
python3 \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -39,6 +39,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
perl-base \
pkgconf \
python3 \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -39,6 +39,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
perl-base \
pkgconf \
python3 \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -39,6 +39,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
perl-base \
pkgconf \
python3 \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -39,6 +39,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
perl-base \
pkgconf \
python3 \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -39,6 +39,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
perl-base \
pkgconf \
python3 \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -41,6 +41,7 @@ exec "$@"' > /usr/bin/nosync && \
perl-base \
python3 \
python3-PyYAML \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -41,6 +41,7 @@ exec "$@"' > /usr/bin/nosync && \
perl-base \
python3 \
python3-PyYAML \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -100,6 +100,7 @@ exec "$@"' > /usr/bin/nosync && \
pulseaudio-libs-devel \
python3 \
python3-PyYAML \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -86,16 +86,9 @@ RUN zypper update -y && \
pcre-devel-static \
perl-base \
pkgconfig \
- python3-Pillow \
- python3-PyYAML \
- python3-Sphinx \
- python3-base \
- python3-numpy \
- python3-opencv \
- python3-pip \
- python3-setuptools \
- python3-sphinx_rtd_theme \
- python3-wheel \
+ python39-base \
+ python39-pip \
+ python39-setuptools \
rdma-core-devel \
rpm \
sed \
@@ -127,10 +120,16 @@ RUN zypper update -y && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/g++ && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
-RUN /usr/bin/pip3 install meson==0.56.0
+RUN /usr/bin/pip3.9 install \
+ PyYAML \
+ 'docutils<0.18' \
+ meson==0.63.2 \
+ pillow \
+ sphinx \
+ sphinx-rtd-theme
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"
+ENV PYTHON "/usr/bin/python3.9"
@@ -104,6 +104,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
perl-base \
pkgconf \
python3 \
+ python3-docutils \
python3-numpy \
python3-opencv \
python3-pillow \
@@ -136,7 +137,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/g++ && \
ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
-RUN /usr/bin/pip3 install meson==0.56.0
+RUN /usr/bin/pip3 install meson==0.63.2
ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
ENV LANG "en_US.UTF-8"
new file mode 100644
@@ -0,0 +1,80 @@
+mappings:
+ flake8:
+ CentOSStream8:
+ OpenSUSELeap153:
+
+ meson:
+ CentOSStream8:
+ OpenSUSELeap153:
+
+ python3:
+ CentOSStream8: python38
+ OpenSUSELeap153: python39-base
+
+ python3-PyYAML:
+ CentOSStream8: python38-PyYAML
+ OpenSUSELeap153:
+
+ python3-devel:
+ CentOSStream8: python38-devel
+ OpenSUSELeap153: python39-devel
+
+ python3-docutils:
+ CentOSStream8:
+ OpenSUSELeap153:
+
+ python3-numpy:
+ CentOSStream8: python38-numpy
+ OpenSUSELeap153:
+
+ python3-opencv:
+ CentOSStream8:
+ OpenSUSELeap153:
+
+ python3-pillow:
+ CentOSStream8:
+ OpenSUSELeap153:
+
+ python3-pip:
+ CentOSStream8: python38-pip
+ OpenSUSELeap153: python39-pip
+
+ python3-pillow:
+ CentOSStream8:
+ OpenSUSELeap153:
+
+ python3-selinux:
+ CentOSStream8:
+ OpenSUSELeap153:
+
+ python3-setuptools:
+ CentOSStream8: python38-setuptools
+ OpenSUSELeap153: python39-setuptools
+
+ python3-sphinx:
+ CentOSStream8:
+ OpenSUSELeap153:
+
+ python3-sphinx-rtd-theme:
+ CentOSStream8:
+ OpenSUSELeap153:
+
+ python3-venv:
+ CentOSStream8: python38
+ OpenSUSELeap153: python39-base
+
+ python3-wheel:
+ CentOSStream8: python38-wheel
+ OpenSUSELeap153: python39-pip
+
+pypi_mappings:
+ # Request last version
+ meson:
+ default: meson==0.63.2
+
+ python3-docutils:
+ default: docutils<0.18
+
+ # Drop packages that need devel headers
+ python3-numpy:
+ OpenSUSELeap153:
@@ -89,6 +89,7 @@ packages:
- pulseaudio
- python3
- python3-PyYAML
+ - python3-docutils
- python3-numpy
- python3-opencv
- python3-pillow
new file mode 100644
@@ -0,0 +1,3 @@
+paths:
+ pip3: /usr/bin/pip3.8
+ python: /usr/bin/python3.8
new file mode 100644
@@ -0,0 +1,3 @@
+paths:
+ pip3: /usr/bin/pip3.9
+ python: /usr/bin/python3.9
Python 3.6 is at end-of-life. Update the libvirt-ci module to a version that supports overrides for targets and package mappings; this way, QEMU can use the newer versions provided by CentOS 8 (Python 3.8) and OpenSUSE 15.3 (Python 3.9). One unexpected issue is that sphinx-rtd-theme does not want versions of docutils starting with 0.18. For distro-installed packages we can assume that the packager knew this, but when installing from PyPI the package version needs to be constrained by hand. In order to do this, add the docutils package explicitly to the qemu project file. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> --- .gitlab-ci.d/cirrus/freebsd-12.vars | 2 +- .gitlab-ci.d/cirrus/freebsd-13.vars | 2 +- .gitlab-ci.d/cirrus/macos-12.vars | 2 +- scripts/ci/setup/build-environment.yml | 2 +- tests/docker/dockerfiles/alpine.docker | 1 + tests/docker/dockerfiles/centos8.docker | 23 +++--- .../dockerfiles/debian-amd64-cross.docker | 1 + tests/docker/dockerfiles/debian-amd64.docker | 1 + .../dockerfiles/debian-arm64-cross.docker | 1 + .../dockerfiles/debian-armel-cross.docker | 1 + .../dockerfiles/debian-armhf-cross.docker | 1 + .../dockerfiles/debian-mips64el-cross.docker | 1 + .../dockerfiles/debian-mipsel-cross.docker | 1 + .../dockerfiles/debian-ppc64el-cross.docker | 1 + .../dockerfiles/debian-s390x-cross.docker | 1 + .../dockerfiles/fedora-win32-cross.docker | 1 + .../dockerfiles/fedora-win64-cross.docker | 1 + tests/docker/dockerfiles/fedora.docker | 1 + tests/docker/dockerfiles/opensuse-leap.docker | 23 +++--- tests/docker/dockerfiles/ubuntu2004.docker | 3 +- tests/lcitool/mappings.yml | 80 +++++++++++++++++++ tests/lcitool/projects/qemu.yml | 1 + tests/lcitool/targets/centos-stream-8.yml | 3 + tests/lcitool/targets/opensuse-leap-153.yml | 3 + 24 files changed, 131 insertions(+), 26 deletions(-) create mode 100644 tests/lcitool/mappings.yml create mode 100644 tests/lcitool/targets/centos-stream-8.yml create mode 100644 tests/lcitool/targets/opensuse-leap-153.yml