-
Notifications
You must be signed in to change notification settings - Fork 283
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
change custom easyblock for Python to set pythonpath
class variable to a fixed location relative to build path
#3400
base: 5.0.x
Are you sure you want to change the base?
Conversation
pythonpath
to a fixed location relative to build path$PYTHONPATH
to a fixed location relative to build path
$PYTHONPATH
to a fixed location relative to build pathpythonpath
class variable to a fixed location relative to build path
@gkaf89 Thanks a lot for your in-depth analysis in easybuilders/easybuild-easyconfigs#21078, that's very helpful. I'm not sure the proposed fix is correct though... I'll need some time to deep dive into this though, and fully understand what's going on. |
With the proposed modification the following file directory structure is created in the Python installation directory:
The However, based on definition of If the |
be82de1
to
4ce389d
Compare
4ce389d
to
ecbb3b9
Compare
BTW: Can you change the title and description to make it fit better:
This would help better understanding the change some time later |
ecbb3b9
to
b4373c8
Compare
The `pythonpath` variable was used to store python scripts in a temporary location and later copy them in the installation path. The scripts were stored in the path were log files are stored, `log_path()`, in both the build and installation directories. - Rename `pythonpath` to `python_script_dir_relative_path`. - Use the more appropriate location `etc/python` to store the python scripts in the build and then installation directories. Note that all functions handling the python script path accept relative paths only. Currently, only the `sitecustomize.py` python environment initialization script is stored in script directory. Issue: easybuilders/easybuild-easyconfigs#21078
b4373c8
to
eede0a9
Compare
The commit is reorganized according to the suggestions. All modification are made in a single commit so that they are easier to track. The underlying issue is that I was a bit confused about the role of |
This now got superseded by getting rid of the path: #3514 This PR would break |
The
pythonpath
variable in thepython.py
EasyBlock is used to create temporary directories to store build artifacts. However, there are 2 problems with the current definition of thepythonpath
instance field:pythonpath
do not accept a full path.The
build_path()
function cannot be used instead oflog_path()
as the function provides a full path as well. Thus we opted to hard-code a relative path with respect to the build directory.Issue: easybuilders/easybuild-easyconfigs#21078