Skip to content
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

Pin virtualenv to 16.7.9 #21977

Merged
merged 1 commit into from
Feb 12, 2020
Merged

Pin virtualenv to 16.7.9 #21977

merged 1 commit into from
Feb 12, 2020

Conversation

lidizheng
Copy link
Contributor

@lidizheng lidizheng commented Feb 11, 2020

Fixes #21966

In short, virtualenv >= 20.0.0 + realpath doesn't work.

virtualenv introduces a breaking change in their 20.0.x release, where the Python binary changed from a script to a symlink. Our infrastructure code depended on previous behavior, and invokes realpath on the Python binary to get the full file path. However, for symlinks, realpath always traces down the symlinks and eventually gets the system version of Python. Then, the build script installed gRPC Python packages in the wrong Python environment, resulted in test failure.

root@4a3f61c8c7a9:/var/local/git/grpc# ls -l py37_asyncio/bin/python
lrwxrwxrwx 3 root staff 18 Feb 11 18:45 py37_asyncio/bin/python -> /usr/bin/python3.7
root@4a3f61c8c7a9:/var/local/git/grpc# realpath py37_asyncio/bin/python
/usr/bin/python3.7

Manual sanity check passed:

tools/run_tests/run_interop_tests.py -l python -s python --use_docker --http2_interop --internal_ci -t -j 1

@lidizheng lidizheng added kind/bug lang/Python release notes: no Indicates if PR should not be in release notes labels Feb 11, 2020
@lidizheng
Copy link
Contributor Author

Known failures: #13379

@lidizheng lidizheng merged commit 96385e2 into grpc:master Feb 12, 2020
@lock lock bot locked as resolved and limited conversation to collaborators May 20, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area/infra kind/bug lang/Python release notes: no Indicates if PR should not be in release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Interop Tests Broken on Master
3 participants