-
Notifications
You must be signed in to change notification settings - Fork 49
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
services: implement file fetching from external storage #416
Conversation
d962b1f
to
5d7ed31
Compare
a59ab45
to
c3668e3
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.
.
1b866ad
to
0663e22
Compare
6a37681
to
207cdd6
Compare
invenio_records_resources/services/files/components/metadata.py
Outdated
Show resolved
Hide resolved
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! I think we're almost there, just a couple of naming and placement things to avoid data/code migrations in the future.
invenio_records_resources/services/files/components/metadata.py
Outdated
Show resolved
Hide resolved
invenio_records_resources/services/files/components/metadata.py
Outdated
Show resolved
Hide resolved
bba92c0
to
0f55a27
Compare
Things shelved for the future: |
0f55a27
to
07d855f
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.
We have to redo everything...
One missing entrypoint and we're good to go 🚀
"inveniordm.test", | ||
] | ||
|
||
app_config["FILES_REST_STORAGE_CLASS_LIST"] = { |
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.
shelve/comment: we have to remember to configure this in app-rdm
(and ZenodoRDM)
07d855f
to
f21a7c5
Compare
f21a7c5
to
1787e47
Compare
|
Now there will be two "workflows" to upload files:
a) if the payload does not contain a
uri
/sotrage_class==E
it goes as before:init
will create the file record (no object version nor file instance), Then requests to/content
and/commit
are needed from the user to get the file in.b) if the payload does contain a
uri
/sotrage_class==E
, theinit
creates an object version and a file instance, and triggers the task to do aset_content
andcommit
. Those actions are forbiden by the user.