Closed joschi closed 2 weeks ago
[!CAUTION]
Review failed
The pull request is closed.
This pull request introduces significant changes to the configuration and functionality of the application, primarily focusing on the transition from AWS S3 storage to local disk storage. New environment variables are added to support this transition, while existing variables are updated or removed. Additionally, new Docker Compose configurations are introduced, and various files are modified to reflect the new storage approach. Documentation has been updated to clarify these changes, ensuring that the application can effectively utilize either local file systems or S3-compatible solutions.
File | Change Summary |
---|---|
.env.sample |
Added variables: DRIVE_DISK , ASSET_URL_BASE , FS_ASSET_PATH ; removed S3_URL_BASE . |
compose-fs.yaml |
Added hollo and postgres services; defined volumes postgres_data and assets_data . |
compose.yaml |
Updated hollo service image; added DRIVE_DISK , ASSET_URL_BASE ; removed S3_URL_BASE . |
docs/src/content/docs/install/env.mdx |
Added variables: DRIVE_DISK , ASSET_URL_BASE , FS_ASSET_PATH ; updated structure for clarity. |
package.json |
Added dependencies: @aws-sdk/s3-request-presigner , flydrive , mime . |
src/api/v1/accounts.ts |
Changed file upload mechanism from S3 to local disk; updated import statements. |
src/api/v1/media.ts |
Modified media upload to use local storage instead of S3; updated URL generation. |
src/index.tsx |
Added conditional static file serving based on DRIVE_DISK . |
src/media.ts |
Updated thumbnail upload to use local disk storage; modified URL construction. |
src/pages/emojis.tsx |
Changed emoji upload to local disk storage; updated URL generation. |
src/s3.ts |
Integrated flydrive for file storage; added logic for selecting storage driver based on DRIVE_DISK . |
Objective | Addressed | Explanation |
---|---|---|
Support using file systems instead of S3 (#10) | ✅ |
🐇 In the meadow where the bunnies play,
New paths for storage have come our way!
With local disks now in our embrace,
We hop along, keeping up the pace.
No more S3, just files at hand,
A joyful leap in our fluffy band! 🥕✨
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Early read through looks okay, though maybe rename that s3 file to storage or something?
Thanks for your contribution! I will review this today.
You might've missed it, but it's also possible to configure multiple stores and then select between them using the manager API: https://flydrive.dev/docs/drive_manager
Use FlyDrive as abstraction for the storage layer used to store assets such as avatars, custom emojis, or media from posts.
Closes #10
Summary by CodeRabbit
Release Notes
New Features
DRIVE_DISK
,ASSET_URL_BASE
, andFS_ASSET_PATH
.hollo
andpostgres
services.DRIVE_DISK
configuration.Bug Fixes
Documentation
Chores
package.json
for enhanced functionality..gitignore
entry for theassets/
directory.