firefiles icon indicating copy to clipboard operation
firefiles copied to clipboard

Implement Oracle's s3 bucket integration

Open faisalsayed10 opened this issue 2 years ago • 2 comments

Oracle is yet another object storage platform that would be a very good integration to have in our app. The good part is that Oracle's object storage fully supports the AWS S3 API, So we don't need to reinvent the wheel again!

If you look into our codebase right now, you'll see that we support Backblaze and AWS both at the same time. Also, we have only written the code for supporting AWS S3, but it works out of the box for Backblaze! (with some minor conditional changes wherever required) image

Example: conditions inside useS3.tsx wherever small changes are required depending on the bucket: image

Okay, so now, your job is to integrate Oracle's object storage in a similar manner by making the useS3 hook compatible with it.

  • First, create a new file inside the pages/new/ directory which will be used to get the credentials for that provider. (refer other files to get an idea)
  • Then, make changes in the useS3 hook wherever required. Explore how we've integrated Backblaze and try to follow it.
  • Navigate to util/globals.ts and add an object for your provider to the PROVIDERS array. (Also add a logo for the provider in the public/ directory)
  • Navigate to util/types.ts and add your provider's name to the Provider enum.
  • Finally, navigate to the useBucket hook and add a case for your provider and return that hook.
  • Also make sure to edit any provider-specific functions to make them work with your provider. (look for switch cases or if/else statements that check for the type of provider).

Refer to CONTRIBUTING.md for further guidance: https://github.com/faisalsayed10/firefiles/blob/main/docs/CONTRIBUTING.md#testing

faisalsayed10 avatar Jul 13 '23 13:07 faisalsayed10

We are working on this issue.

nghiapham1026 avatar Aug 01 '23 22:08 nghiapham1026

Awesome, looking forward to the PR

faisalsayed10 avatar Aug 02 '23 18:08 faisalsayed10