From: John Snow <jsnow@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Thomas Huth" <thuth@redhat.com>,
qemu-block@nongnu.org, "Beraldo Leal" <bleal@redhat.com>,
"Hanna Reitz" <hreitz@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"John Snow" <jsnow@redhat.com>, "Kevin Wolf" <kwolf@redhat.com>,
"Cleber Rosa" <crosa@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>
Subject: [PATCH RFC 2/6] build, tests: Add qemu in-tree packages to pyvenv at configure time.
Date: Tue, 20 Jun 2023 20:21:17 -0400 [thread overview]
Message-ID: <20230621002121.1609612-3-jsnow@redhat.com> (raw)
In-Reply-To: <20230621002121.1609612-1-jsnow@redhat.com>
though, ouch: on my machine this takes 3-4 entire seconds to do. I wish
it wasn't so slow, but we can't rely on these packages not having any
dependencies any more.
We could theoretically use a .pth hack when creating the venv to
automatically include this directory as an "installed packages"
location, but when we go to drop qemu.qmp in the future, that will break
- I think we need to *install* this package.
Signed-off-by: John Snow <jsnow@redhat.com>
---
configure | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/configure b/configure
index 01a53576a7..d2e0abc068 100755
--- a/configure
+++ b/configure
@@ -250,6 +250,7 @@ git_submodules_action="update"
git="git"
debug_tcg="no"
docs="auto"
+tests="enabled"
EXESUF=""
prefix="/usr/local"
qemu_suffix="qemu"
@@ -639,6 +640,10 @@ for opt do
;;
--disable-docs) docs=disabled
;;
+ --enable-tests) tests=enabled
+ ;;
+ --disable-tests) tests=disabled
+ ;;
--cpu=*)
;;
--target-list=*) target_list="$optarg"
@@ -985,6 +990,32 @@ if test "$docs" != "disabled" ; then
fi
fi
+# Optionally pre-load the testing pre-requisites. This is for iotests,
+# vmtests, and anything else that uses Python qemu.* packages. Note that
+# our in-tree qemu packages are currently pure python with zero external
+# dependencies. For this reason, it excludes the Avocado dependencies
+# which are installed on-demand at time of use instead.
+
+mkvenv_flags=""
+if test "$pypi" = "enabled" ; then
+ mkvenv_flags="--online"
+fi
+
+if test "$tests" = "enabled" ; then
+ if ! $mkvenv install \
+ $mkvenv_flags \
+ --editable \
+ --dir "${source_path}/python/wheels" \
+ "${source_path}/python/";
+ then
+ echo "There was a problem installing the in-tree python packages for testing."
+ exit 1
+ fi
+ touch pyvenv/tests.group
+fi
+
+echo "mkvenv: done for now, ciao!"
+
# Probe for ninja
if test -z "$ninja"; then
--
2.40.1
next prev parent reply other threads:[~2023-06-21 0:23 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-21 0:21 [PATCH RFC 0/6] Switch iotests to pyvenv John Snow
2023-06-21 0:21 ` [PATCH RFC 1/6] experiment: add mkvenv install John Snow
2023-06-21 0:21 ` John Snow [this message]
2023-06-21 0:21 ` [PATCH RFC 3/6] iotests: get rid of '..' in path environment output John Snow
2023-06-21 0:21 ` [PATCH RFC 4/6] iotests: use the correct python to run linters John Snow
2023-06-21 0:21 ` [PATCH RFC 5/6] iotests: use pyvenv/bin/python3 to launch child test processes John Snow
2023-06-21 0:21 ` [PATCH RFC 6/6] iotests: don't add qemu.git/python to PYTHONPATH John Snow
2023-06-21 7:08 ` [PATCH RFC 0/6] Switch iotests to pyvenv Paolo Bonzini
2023-06-22 9:24 ` Paolo Bonzini
2023-06-22 21:03 ` John Snow
2023-06-22 21:04 ` Paolo Bonzini
2023-06-22 21:07 ` John Snow
2023-06-22 21:11 ` Paolo Bonzini
2023-06-22 21:18 ` John Snow
2023-06-22 21:57 ` 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=20230621002121.1609612-3-jsnow@redhat.com \
--to=jsnow@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=bleal@redhat.com \
--cc=crosa@redhat.com \
--cc=hreitz@redhat.com \
--cc=kwolf@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.com \
/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).