Use Storage disk for storage to support different filesystems like S3#119
Use Storage disk for storage to support different filesystems like S3#119barryvdh wants to merge 6 commits intoErugoOSS:mainfrom
Conversation
|
For zipping I used https://github.com/stechstudio/laravel-zipstream |
|
Although I'm not really sure how efficient it is, because the files will be saved to s3 first, then zipped and stored on S3 again. So large files might be a bit problematic. Not sure if you could zip them client side, or just download multiple files in the browser instead. https://dev.to/cmcnicholas/zipadeedoodah-download-multiple-files-to-zip-on-client-browser-1hgc |
|
Not sure how the s3 upload directly works, but I would guess:
Download would also be using https://laravel.com/docs/12.x/filesystem#temporary-urls which would also work for local files if serve is enabled, and then you could probably just redirect there. |
|
Hey @barryvdh, great work on this PR. When running in S3 mode:
You then could combine both approaches:
Need changes in Erugo:
S3-compatible providers: things to watch
Summary
Does it make sense to you? References: |
Implementation & Testing UpdateFollowing up on my previous comment, I've implemented and tested the full S3 integration with the tusd S3 backend on an Infomaniak Public Cloud bucket (OpenStack Swift with S3-compatible API). What was implementedThe implementation is on the New files:
Modified files:
Adaptations vs. initial proposalSeveral things worked differently than expected during real-world testing:
E2E test results (Infomaniak S3)All tests performed against
Known limitations vs. local block storage
Happy to open a separate PR from |
|
The full implementation is available here for review: |
Fixes #37