We are running a pyenv 3.7.8 virtual environment created with pyenv-virtualenv
. We are reproducibly finding that if we pip install awscli
, the aws
binary is not executable. This is on Ubuntu 16.04 and 18.04.
If we go to the directory indicated by pyenv which python
e.g., /home/${USER}/.pyenv/versions/ENVNAME/bin/
, we see:
drwxr-x--- 2 user user 4096 Nov 5 11:39 __pycache__
-rw-r--r-- 1 user user 2239 Nov 5 11:38 activate
-rw-r--r-- 1 user user 1291 Nov 5 11:38 activate.csh
-rw-r--r-- 1 user user 2443 Nov 5 11:38 activate.fish
-rw-r----- 1 user user 866 Nov 5 11:39 aws
-rw-r----- 1 user user 1432 Nov 5 11:39 aws.cmd
-rw-r----- 1 user user 204 Nov 5 11:39 aws_bash_completer
-rw-r----- 1 user user 1187 Nov 5 11:39 aws_completer
-rw-r----- 1 user user 1807 Nov 5 11:39 aws_zsh_completer.sh
-rwxr-xr-x 1 user user 284 Nov 5 11:38 easy_install
-rwxr-xr-x 1 user user 284 Nov 5 11:38 easy_install-3.7
...
Of course, pip[3]
, python[3]
, easy_install
, etc. commands are all executable. The issue appears to limited to aws
itself for some reason we can't figure out.
On macOS latest, the same behavior does not happen: aws
is installed and executable.
We're unable to track down the behavior difference so far. Is there something in the environment that controls whether the console_scripts for a specific package are executable or not when installed with pyenv?
from pyenv shims are sometimes not executable
No comments:
Post a Comment