-
-
Notifications
You must be signed in to change notification settings - Fork 606
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
PexProcess and VenvPexProcess do not use append_only_caches. #11753
Labels
Comments
As discovered in #11742. |
jsirois
added a commit
to jsirois/pants
that referenced
this issue
Mar 21, 2021
Previously we cheated and exported PEX_ROOT as the absolute path of the named caches dir + "pex_root". Since we obtained the absolute path from the local machine, this cheat was unmasked by remote execution where the absolute path of the named caches dir was different. Now we use a relative PEX_ROOT that ties in with append_only_caches. The VenvPex scripts are updated to use relative paths as well. Fixes pantsbuild#11753 # Rust tests and lints will be skipped. Delete if not intended. [ci skip-rust] # Building wheels and fs_util will be skipped. Delete if not intended. [ci skip-build-wheels]
jsirois
added a commit
to jsirois/pants
that referenced
this issue
Mar 21, 2021
Previously we cheated and exported PEX_ROOT as the absolute path of the named caches dir + "pex_root". Since we obtained the absolute path from the local machine, this cheat was unmasked by remote execution where the absolute path of the named caches dir was different. Now we use a relative PEX_ROOT that ties in with append_only_caches. The VenvPex scripts are updated to use relative paths as well. Fixes pantsbuild#11753 # Rust tests and lints will be skipped. Delete if not intended. [ci skip-rust] # Building wheels and fs_util will be skipped. Delete if not intended. [ci skip-build-wheels]
jsirois
added a commit
that referenced
this issue
Mar 21, 2021
Previously we cheated and exported PEX_ROOT as the absolute path of the named caches dir + "pex_root". Since we obtained the absolute path from the local machine, this cheat was unmasked by remote execution where the absolute path of the named caches dir was different. Now we use a relative PEX_ROOT that ties in with append_only_caches. The VenvPex scripts are updated to use relative paths as well. Fixes #11753
jsirois
added a commit
to jsirois/pants
that referenced
this issue
Mar 21, 2021
Previously we cheated and exported PEX_ROOT as the absolute path of the named caches dir + "pex_root". Since we obtained the absolute path from the local machine, this cheat was unmasked by remote execution where the absolute path of the named caches dir was different. Now we use a relative PEX_ROOT that ties in with append_only_caches. The VenvPex scripts are updated to use relative paths as well. Fixes pantsbuild#11753 (cherry picked from commit 4210c6c) [ci skip-rust] [ci skip-build-wheels]
jsirois
added a commit
that referenced
this issue
Mar 21, 2021
Previously we cheated and exported PEX_ROOT as the absolute path of the named caches dir + "pex_root". Since we obtained the absolute path from the local machine, this cheat was unmasked by remote execution where the absolute path of the named caches dir was different. Now we use a relative PEX_ROOT that ties in with append_only_caches. The VenvPex scripts are updated to use relative paths as well. Fixes #11753 Fixes #11742 (cherry picked from commit 4210c6c) ___ And in support of the above: Simplify Black file specification. (#11762) Black supports passing an explicit list of files and we have that. This clears the way for having the pex_root named cache symlinked into the Black Process chroot without having Black trying to recursively format everything in there. (cherry picked from commit c927cee)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Right now they avoid the plumbing needed for this by using an absolute named_caches based path for the PEX_ROOT. See comments here: #11040 (comment)
pants/src/python/pants/backend/python/util_rules/pex_environment.py
Lines 224 to 234 in 60916e1
pants/src/python/pants/backend/python/util_rules/pex_environment.py
Lines 122 to 132 in 60916e1
pants/src/python/pants/backend/python/util_rules/pex.py
Lines 968 to 988 in 60916e1
This breaks remote execution where a PEX might be built in a container with a different named caches dir absolute path than where it is run.
The VenvPexProcess setup will additionally need a fix for its
venv_dir
which is likewise absolute and should be relativized against the append_only_caches dir:pants/src/python/pants/backend/python/util_rules/pex.py
Lines 841 to 848 in 60916e1
The text was updated successfully, but these errors were encountered: