-
Notifications
You must be signed in to change notification settings - Fork 192
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
Make the node repository API backend agnostic #2506
Make the node repository API backend agnostic #2506
Conversation
1d64dde
to
69e946a
Compare
62a8da6
to
5424666
Compare
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.
I like it!
Only additional comment, for the RemoteData class:
- maybe now the 'disabling' of add_path doesn't work anymore? https://github.com/aiidateam/aiida_core/blob/b22f55155e7a602ac42b00edf62e57e4a458f55b/aiida/orm/nodes/data/remote.py#L45
- does it make sense (maybe) to harmonise then also the API of RemoteData to list, get files from the remote dir, with the same name and type of returned objects (where possible)? Maybe namespacing all that functionality in a remotedata.remotefolder.xxx? Or not really, since in this case we refer to a remote folder on disk (on the supercomputer) while the repository concept is a bit more abstract?
actually, the Maybe we should already do this in this PR. Make it impossible to access the repository directly from the node class (i.e. remove the property) and only expose methods that should be callable directly on the node. |
255b94e
to
e3db4c2
Compare
Initially, the only backend supported for the file repository of nodes was the local file system. In the near future, additional backends such as an object store or a remote file system will be implemented. For this to work the API of the node repository will have to be adapted because now it is geared to work with a local file system. To prevent too many changes after the release of the beta, we already define the API here that should be able to support the different repository backends that will be implemented in the future.
e3db4c2
to
e3e4579
Compare
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.
Thanks a lot, that's really a nice step toward the repo improvement!
Fixes #2504
Initially, the only backend supported for the file repository of nodes
was the local file system. In the near future, additional backends such
as an object store or a remote file system will be implemented. For this
to work the API of the node repository will have to be adapted because
now it is geared to work with a local file system. To prevent too many
changes after the release of the beta, we already define the API here
that should be able to support the different repository backends that
will be implemented in the future.