Print

Print


Hm. So it seems to be related to how the publish.sh based workflow currently works and that pyenv virtual envs are only setting up the directory structure you would assume exists under a python -m venv based venv

$ docker run --rm -ti -u root matthewfeickert/pyenv-virtualenv-conda:latest
root@f58077d9247f:~/data# ls /home/docker/.pyenv/versions/3.10.4/
bin  envs  include  lib  share
root@f58077d9247f:~/data# ls /home/docker/.pyenv/versions/3.10.4/lib/
libpython3.10.a  pkgconfig  python3.10
root@f58077d9247f:~/data# ls /home/docker/.pyenv/versions/3.10.4/envs/base/   
bin  include  lib  lib64  pyvenv.cfg
root@f58077d9247f:~/data# ls /home/docker/.pyenv/versions/3.10.4/envs/base/lib
python3.10

so currently activating a pyenv virtualenv and then trying to install will fail, but if you select an actual Python version install (e.g. pyenv global <version>) it succeeds

$ docker run --rm -ti -u root matthewfeickert/pyenv-virtualenv-conda:latest
root@f58077d9247f:~/data# apt-get update && apt-get -y install python3-dev pkg-config cmake uuid-dev libssl-dev libz-dev
root@f58077d9247f:~/data# pyenv global 3.10.4
root@f58077d9247f:~/data# git clone https://github.com/xrootd/xrootd.git && cd xrootd
root@f58077d9247f:~/data/xrootd# git rev-parse HEAD
410a59c313c7e1b8970c4ab696679b2fad9209b3
root@f58077d9247f:~/data/xrootd# cp packaging/wheel/* .
root@f58077d9247f:~/data/xrootd# ./publish.sh
root@f58077d9247f:~/data/xrootd# python -m pip --verbose install --upgrade ./dist/xrootd-*.tar.gz
root@f58077d9247f:~/data/xrootd# python -m pip show xrootd
WARNING: The directory '/home/docker/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
Name: xrootd
Version: 2022.530
Summary: XRootD Python bindings
Home-page: http://xrootd.org
Author: XRootD Developers
Author-email: [log in to unmask]
License: LGPLv3+
Location: /home/docker/.pyenv/versions/3.10.4/lib/python3.10/site-packages
Requires: 
Required-by:
root@f58077d9247f:~/data/xrootd# python -c 'import XRootD; print(XRootD)'
<module 'XRootD' from '/home/docker/.pyenv/versions/3.10.4/lib/python3.10/site-packages/XRootD/__init__.py'>
root@f58077d9247f:~/data/xrootd# python -c 'import pyxrootd; print(pyxrootd)'
<module 'pyxrootd' from '/home/docker/.pyenv/versions/3.10.4/lib/python3.10/site-packages/pyxrootd/__init__.py'>
root@f58077d9247f:~/data/xrootd# python -c 'from XRootD import client; print(client.FileSystem("root://someserver:1094"))'
<XRootD.client.filesystem.FileSystem object at 0x7fe94c38fc10>
root@f58077d9247f:~/data/xrootd# 

So getting things to work with a pyenv virtualenv will probably require better understanding the directory logic that is currently used during in the current publish.sh based workflow.


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <xrootd/xrootd/issues/1474/1142719541@github.com>

[ { "@context": "http://schema.org", "@type": "EmailMessage", "potentialAction": { "@type": "ViewAction", "target": "https://github.com/xrootd/xrootd/issues/1474#issuecomment-1142719541", "url": "https://github.com/xrootd/xrootd/issues/1474#issuecomment-1142719541", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { "@type": "Organization", "name": "GitHub", "url": "https://github.com" } } ]

Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1