S3 Support
- Dominant language
- Java
- Stars
- 593
- Forks
- 123
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 4
Description
Gentics Mesh can potentially make use of S3 in various ways. Each enhances the functionality in various ways.
# Options
## A - S3 Binary Storage
S3 can be used as a binary storage replacement. This means that every upload to Mesh for binary fields is passed onto the S3 server. The binaries will be stored using the binary field UUID in S3.
The path to the S3 object can be either determined via the binaryField Uuid or an S3 path property within the binary response JSON. This allows client applications to render S3 URLs for web clients.
Image Resize requests still need to be answered by Gentics Mesh. (Dynamically resized image data is not placed on S3)
## B - External S3 URL Support
Instead of uploading a file to Mesh you can include a S3 URL in your binary field JSON to update the field. Gentics Mesh will utilize this field when it needs to process binary data.
This way existing S3 data can be utilized in Gentics Mesh without the need to re-upload everything in mesh.
## C - S3 Link Resolving
Gentics Mesh will resolve mesh links to binary nodes into S3 URLs. This way asset links will directly point to S3 instead to Gentics Mesh. This allows web CDN usage of assets in S3.
# Feedback
We still need feedback before we can fully implement S3 support. We are curious whether the mentioned options would solve your specific use-case for S3 with Gentics Mesh. Please let us know if we missed something.
# Questions
* Is it acceptable that all assets are placed in a single bucket?
* How should / could permissions be handled for assets in the S3 bucket?
* How could image resizing be handled for S3 assets?
Contributor guide
Assessment
This issue has not been assessed yet.