qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Cleber Rosa <crosa@redhat.com>
To: David Gibson <david@gibson.dropbear.id.au>
Cc: ldoktor@redhat.com, ehabkost@redhat.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Cryptic errors from PIP install if missing openssl-devel
Date: Wed, 28 Aug 2019 23:27:46 -0400	[thread overview]
Message-ID: <20190829032746.GA488@localhost.localdomain> (raw)
In-Reply-To: <20190829015117.GH16342@umbus.fritz.box>

On Thu, Aug 29, 2019 at 11:51:17AM +1000, David Gibson wrote:
> On Thu, Aug 29, 2019 at 11:31:25AM +1000, David Gibson wrote:
> > If I attempt to run "make check-acceptance" on my POWER9, RHEL8.1
> > machine when the openssl-devel package isn't installed, I get the
> > following very cryptic error:
> > 
> >   VENV    /home/dwg/qemu/build/rhel8/tests/venv
> >   PIP     /home/dwg/qemu/tests/requirements.txt
> > Command "/home/dwg/qemu/build/rhel8/tests/venv/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-la4el5r5/cryptography/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-1efs22iz-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/dwg/qemu/build/rhel8/tests/venv/include/site/python3.6/cryptography" failed with error code 1 in /tmp/pip-build-la4el5r5/cryptography/
> > 
> > Using V=1 doesn't give any more useful information, and it's not
> > (easily) possible to manually re-run the given command since it relies
> > on things in /tmp that are removed once the attempt finishes.
> > 
> > I only figured out it was openssl-devel being missing that was the
> > problem by (mostly) guesswork.  It would be really great if we could
> > generate a more helpful error here.
> > 
> > In addition, if I rerun "make check-acceptance" it no longer even
> > attempts the PIP install, since tests/venv already exists in my build
> > environment.  It then sort of works, but I think it might be hitting
> > other errors because of the missing python packages.  Sorry that's a
> > bit vague - I also seem to be getting unrelated errors that I'm still
> > trying to figure out.
> 
> Fwiw, I also get an equally cryptic error that I haven't figured out
> the cause for on my 32-bit Fedora container environment:
> 
>   VENV    /home/dwg/src/qemu/build/i386/tests/venv
>   PIP     /home/dwg/src/qemu/tests/requirements.txt
>   Failed building wheel for bcrypt
> Could not build wheels for bcrypt which use PEP 517 and cannot be installed directly
> You are using pip version 19.0.3, however version 19.2.3 is available.
> You should consider upgrading via the 'pip install --upgrade pip' command.
>

This is certainly caused by pip not being able to install paramiko on
those systems.  I have dealt with paramiko (and its many dependencies)
before on the avocado remote runner plugin (which is not being used
here) and it was not fun.

My personal goal was to rely on the ssh binary as an ssh client, which
should be more ubiquitous, and with that I added a simple wrapper to
Avocado:

  https://avocado-framework.readthedocs.io/en/71.0/api/utils/avocado.utils.html#module-avocado.utils.ssh

I guess we should consider changing the (few) tests that require
paramiko to use that module instead.

> In this case the check definitely doesn't work - it doesn't appear to
> have installed avocado in the venv.
> 
>   AVOCADO tests/acceptance
> /home/dwg/src/qemu/build/i386/tests/venv/bin/python: No module named avocado
>

My hope is that with pure Python modules in requirements.txt, failures
will be much harder to come by.  Either way, it'd be nice to improve
the venv creation, at the very least add a cleanup if it fails to
complete successfully.

As a workaround I'd suggest two things:

 1) remove paramiko from requirements.txt
 2) set the env var CONTINUOUS_INTEGRATION=1 before running `make
    check-acceptace` (the tests in linux_ssh_mips_malta.py check for
    that and don't run if it's set).

But, we'll need to address those failures definitely ASAP.  Anyway,
thanks for reporting it.

- Cleber.

> -- 
> David Gibson			| I'll have my music baroque, and my code
> david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
> 				| _way_ _around_!
> http://www.ozlabs.org/~dgibson




  reply	other threads:[~2019-08-29  3:29 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-29  1:31 [Qemu-devel] Cryptic errors from PIP install if missing openssl-devel David Gibson
2019-08-29  1:51 ` David Gibson
2019-08-29  3:27   ` Cleber Rosa [this message]
2019-08-29  9:24     ` Philippe Mathieu-Daudé
2019-08-29  9:46       ` Philippe Mathieu-Daudé
2019-09-03 15:08         ` Cleber Rosa
2019-09-03 15:22           ` Philippe Mathieu-Daudé
2019-09-03 15:47             ` Cleber Rosa
2019-09-03 15:56               ` Lukáš Doktor
2019-09-03 15:57                 ` Lukáš Doktor
2019-09-03 17:27           ` Eduardo Habkost
2019-09-03 22:33             ` Cleber Rosa
2019-09-03 15:18       ` Cleber Rosa
2019-08-30 17:56 ` Eduardo Habkost
2019-08-31  1:48   ` David Gibson
2019-09-03 15:31     ` Cleber Rosa
2019-09-04 19:57     ` Cleber Rosa
2019-09-05  2:09       ` David Gibson
2019-09-05 13:38         ` Cleber Rosa
2019-09-05 14:06           ` Eduardo Habkost
2019-09-05 15:24             ` Cleber Rosa
2019-09-06  0:34           ` David Gibson
2019-09-06 14:43             ` Eduardo Habkost
2019-09-06 14:52               ` Cleber Rosa
2019-09-06 15:14                 ` Eduardo Habkost
2019-09-06 15:29                   ` Cleber Rosa

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=20190829032746.GA488@localhost.localdomain \
    --to=crosa@redhat.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=ehabkost@redhat.com \
    --cc=ldoktor@redhat.com \
    --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).