qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Cc: jsnow@redhat.com, philmd@linaro.org, berrange@redhat.com
Subject: [PATCH v2 12/27] tests/docker: add python3-venv dependency
Date: Tue, 16 May 2023 12:58:53 +0200	[thread overview]
Message-ID: <20230516105908.527838-12-pbonzini@redhat.com> (raw)
In-Reply-To: <20230516105908.527838-1-pbonzini@redhat.com>

From: John Snow <jsnow@redhat.com>

Several debian-based tests need the python3-venv dependency as a
consequence of Debian debundling the "ensurepip" module normally
included with Python.

As mkvenv.py stands as of this commit, Debian requires EITHER:

(A) setuptools and pip, or
(B) ensurepip

mkvenv is a few seconds faster if you have setuptools and pip, so
developers should prefer the first requirement. For the purposes of CI,
the time-save is a wash; it's only a matter of who is responsible for
installing pip and when; the timing is about the same.

Arbitrarily, I chose adding ensurepip to the test configuration because
it is normally part of the Python stdlib, and always having it allows us
a more consistent cross-platform environment.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20230511035435.734312-12-jsnow@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 tests/docker/dockerfiles/debian-all-test-cross.docker | 3 ++-
 tests/docker/dockerfiles/debian-hexagon-cross.docker  | 3 ++-
 tests/docker/dockerfiles/debian-riscv64-cross.docker  | 3 ++-
 tests/docker/dockerfiles/debian-tricore-cross.docker  | 3 ++-
 4 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/tests/docker/dockerfiles/debian-all-test-cross.docker b/tests/docker/dockerfiles/debian-all-test-cross.docker
index 981e9bdc7b0e..f9f401544a05 100644
--- a/tests/docker/dockerfiles/debian-all-test-cross.docker
+++ b/tests/docker/dockerfiles/debian-all-test-cross.docker
@@ -57,7 +57,8 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
         gcc-sh4-linux-gnu \
         libc6-dev-sh4-cross \
         gcc-sparc64-linux-gnu \
-        libc6-dev-sparc64-cross
+        libc6-dev-sparc64-cross \
+        python3-venv
 
 ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
 ENV DEF_TARGET_LIST aarch64-linux-user,alpha-linux-user,arm-linux-user,hppa-linux-user,i386-linux-user,m68k-linux-user,mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,ppc-linux-user,ppc64-linux-user,ppc64le-linux-user,riscv64-linux-user,s390x-linux-user,sh4-linux-user,sparc64-linux-user
diff --git a/tests/docker/dockerfiles/debian-hexagon-cross.docker b/tests/docker/dockerfiles/debian-hexagon-cross.docker
index b99d99f94365..c2cfb6a5d0fa 100644
--- a/tests/docker/dockerfiles/debian-hexagon-cross.docker
+++ b/tests/docker/dockerfiles/debian-hexagon-cross.docker
@@ -20,7 +20,8 @@ RUN apt-get update && \
         bison \
         flex \
         git \
-        ninja-build && \
+        ninja-build \
+        python3-venv && \
 # Install QEMU build deps for use in CI
     DEBIAN_FRONTEND=noninteractive eatmydata \
     apt build-dep -yy --arch-only qemu
diff --git a/tests/docker/dockerfiles/debian-riscv64-cross.docker b/tests/docker/dockerfiles/debian-riscv64-cross.docker
index 803afb957345..081404e01410 100644
--- a/tests/docker/dockerfiles/debian-riscv64-cross.docker
+++ b/tests/docker/dockerfiles/debian-riscv64-cross.docker
@@ -28,7 +28,8 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata apt install -yy \
     libglib2.0-dev \
     ninja-build \
     pkg-config \
-    python3
+    python3 \
+    python3-venv
 
 # Add ports and riscv64 architecture
 RUN echo "deb http://ftp.ports.debian.org/debian-ports/ sid main" >> /etc/apt/sources.list
diff --git a/tests/docker/dockerfiles/debian-tricore-cross.docker b/tests/docker/dockerfiles/debian-tricore-cross.docker
index cfd2faf9a803..269bfa8d4230 100644
--- a/tests/docker/dockerfiles/debian-tricore-cross.docker
+++ b/tests/docker/dockerfiles/debian-tricore-cross.docker
@@ -33,7 +33,8 @@ RUN apt update && \
        pkgconf \
        python3-pip \
        python3-setuptools \
-       python3-wheel
+       python3-wheel \
+       python3-venv
 
 RUN curl -#SL https://github.com/bkoppelmann/package_940/releases/download/tricore-toolchain-9.40/tricore-toolchain-9.4.0.tar.gz \
     | tar -xzC /usr/local/
-- 
2.40.1




  parent reply	other threads:[~2023-05-16 11:00 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-16 10:58 [PATCH v2 01/27] python: shut up "pip install" during "make check-minreqs" Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 02/27] python: update pylint configuration Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 03/27] python: add mkvenv.py Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 04/27] mkvenv: add better error message for broken or missing ensurepip Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 05/27] mkvenv: add nested venv workaround Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 06/27] mkvenv: add ensure subcommand Paolo Bonzini
2023-05-25 20:42   ` John Snow
2023-05-16 10:58 ` [PATCH v2 07/27] mkvenv: add --diagnose option to explain "ensure" failures Paolo Bonzini
2023-05-16 18:27   ` John Snow
2023-05-16 10:58 ` [PATCH v2 08/27] mkvenv: add console script entry point generation Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 09/27] mkvenv: use pip's vendored distlib as a fallback Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 10/27] mkvenv: avoid ensurepip if pip is installed Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 11/27] mkvenv: work around broken pip installations on Debian 10 Paolo Bonzini
2023-05-16 10:58 ` Paolo Bonzini [this message]
2023-05-26  9:17   ` [PATCH v2 12/27] tests/docker: add python3-venv dependency Philippe Mathieu-Daudé
2023-05-16 10:58 ` [PATCH v2 13/27] tests/vm: Configure netbsd to use Python 3.10 Paolo Bonzini
2023-05-26  9:15   ` Philippe Mathieu-Daudé
2023-05-16 10:58 ` [PATCH v2 14/27] tests/vm: add py310-expat to NetBSD Paolo Bonzini
2023-05-26  9:15   ` Philippe Mathieu-Daudé
2023-05-16 10:58 ` [PATCH v2 15/27] python: add vendor.py utility Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 16/27] configure: create a python venv unconditionally Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 17/27] python/wheels: add vendored meson package Paolo Bonzini
2023-05-16 10:58 ` [PATCH v2 18/27] configure: use 'mkvenv ensure meson' to bootstrap meson Paolo Bonzini
2023-05-16 10:59 ` [PATCH v2 19/27] qemu.git: drop meson git submodule Paolo Bonzini
2023-05-16 10:59 ` [PATCH v2 20/27] tests: Use configure-provided pyvenv for tests Paolo Bonzini
2023-05-16 10:59 ` [PATCH v2 21/27] configure: move --enable-docs and --disable-docs back to configure Paolo Bonzini
2023-05-16 10:59 ` [PATCH v2 22/27] configure: bootstrap sphinx with mkvenv Paolo Bonzini
2023-05-16 10:59 ` [PATCH v2 23/27] configure: add --enable-pypi and --disable-pypi Paolo Bonzini
2023-05-16 10:59 ` [PATCH v2 24/27] Python: Drop support for Python 3.6 Paolo Bonzini
2023-05-16 10:59 ` [PATCH v2 25/27] configure: Add courtesy hint to Python version failure message Paolo Bonzini
2023-05-16 10:59 ` [PATCH v2 26/27] mkvenv: mark command as required Paolo Bonzini
2023-05-16 10:59 ` [PATCH v2 27/27] python: bump some of the dependencies Paolo Bonzini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230516105908.527838-12-pbonzini@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=berrange@redhat.com \
    --cc=jsnow@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).