-
Notifications
You must be signed in to change notification settings - Fork 11
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
Ideas for making it easier to distribute computer/code environments #60
Comments
@ltalirz Thanks for the ideas! I really like the idea that having a subfolder in The current Moreover, I can image that the duplicate label issue will be a key barrier for this implementation, correct? If the code/computer in database has the same label as one of the code/computer in the subfolder, there should be a priority to choose one of them, or raise a conflict error when that config is on. |
Cheers!
I haven't looked into the details but it should be possible. We will also need a non-interactive way of providing the template variables, however (e.g. for usage in scripts as in #61).
I guess that is a matter of taste... to me being able to drop in files there is very convenient.
Right - when requesting to load a code, for which already multiple nodes exist, or when trying to set up a code with a label that already exists, this solution should just reraise the In my experience it is typically anyhow not useful to have multiple codes/computers with the same label. |
Distributing a set of pre-configured computers and codes is a problem that needs to be solved in basically all groups who want to start using AiiDA.
Currently, the person in charge needs to write some hand-crafted python scripts (e.g. like this one) in order to automate the computer/code setup, which is tedious and extra code that needs to be maintained.
One way to improve the user experience could be the following:
AIIDA_PATH
is used to store a set of computer/code configurations (following a well-defined schema). All the user needs to do is to drop a few specific configuration files into this folder.load_computer
orload_code
detect that a desired code/computer is not present in the database, they first look inside this folder. If a corresponding configuration is found, the computer/code is set up on the fly (if not,NotExistent
error is raised as usual)verdi config
option could be used to enable/disable this featureload_computer
/load_code
I'll open a draft pull request against the aiida-code-registry that outlines how this could work.
It's not yet touching AiiDA core (this could be done later, if others agree that this would be a welcome feature).
Pinging @unkcpz for info
The text was updated successfully, but these errors were encountered: