-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ensure_dir() should also check for ENOTEMPTY #6426
Comments
Can you provide an example with only |
In an environment such as the one described above (python:3.7-alpine3.9 docker image, docker-ce 17.9, running on Ubuntu 18.04.2 LTS in WSL - see https://medium.com/devopslinks/docker-running-seamlessly-in-windows-subsystem-linux-6ef8412377aa for possible setup), running mkdir on a path that represents a directory that already exists either:
|
So, to summarise, this happens when you install Docker in WSL, and run |
It looks like this change could be related and may help reproducing. |
Environment
pip version:
pip 19.0.3
Python version:
python 3.7
OS:
'python:3.7-alpine3.9' docker image (docker-ce 17.9) running on Ubuntu 18.04.2 LTS in WSL (Windows)
Description
pip install pipenv
fails with the following error:How to Reproduce
Set up environment as described above (alpine3.9, on docker-ce 17.9, running on Ubuntu in WSL). and run the command.
apk --update add --virtual build-dependencies libffi-dev openssl-dev build-base
pip install --upgrade pip
pip install pipenv
Output
Investigation
Compared strace results of a successful run (on a different env) vs the failed run.
On a successful run, the
mkdir
command is continually executed with/tmp/pip-install-<hash>/pipenv/pipenv
as an argument and fails with anEEXIST
error. However, on the failed run the same command fails with anENOTEMPT
error. This has to do with the environment itself (maybe docker/windows related), as the same difference is observed when simply performing mkdir from a shell.The text was updated successfully, but these errors were encountered: