-
Notifications
You must be signed in to change notification settings - Fork 14
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
Extend conda interface: store conda environments in project #1372
Conversation
How would this play out when there is limited number of files possible in the file system? For example, on a HPC cluster. One might want to keep the project on a backed up space, but the conda environment there would be an overkill. |
I would exclude all directories which have |
Is this possible, for example on cmti. I feel a lot of users might simply not know it. I do see the advantages. I suggest we discuss this in one of the pyiron meetings. |
I would like to include this functionality in the |
I still have my reservations about storing the whole environment in the project. Mainly about the number of files created and backup as I mentioned. Additionally for example wont the |
You can still create a central project and store all your environments there, it is just the default that is changing.
This is correct. Still I guess in most cases people are anyway copying their jobs to an archive project as discussed in pyiron/FAQs#46 |
pyiron_base/project/generic.py
Outdated
conda_dir = os.path.join(self.path, "conda") | ||
os.makedirs(conda_dir, exist_ok=True) | ||
return CondaEnvironment(env_path=conda_dir) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would it not be possible to make the conda path configurable here, that would side step @srmnitc concerns, which I think are valid.
@pmrv and @srmnitc based on your suggestion, I kept the default option to create a new central conda environment. Still now the users can disable the global installation and create a conda environment only in a given project using the pr.conda_environment.create(env_name="test", env_file="environment.yml", global_installation=False) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
This pull request changes the location of the conda environment and stores it inside the project in a
conda
folder. In addition, it checks if an environment already exists and in that case just raises a warning rather than recreating the environment.