Create a S3 bucket for a tenant

Description

Overview
A bucket is needed for each tenant to store the files.

Approach

  • This can be done during module initialization using Tenant API

  • Check if the bucket already doesn't exist and create one

  • Come up with a convention for the bucket name Ex: tenantID_foliodataExport etc..

  • bucket names are universal globally. So make sure the name is not a common one(probably a UUID can be appended, but this cannot be done if it'd done using module initialization as we wouldn't know the tenant bucket name if it was already created)

To POC code to export file is here: https://github.com/KVupp/folio-export-aws/blob/master/src/main/java/org/folio/folio_export_aws/App.java

Acceptance Criteria

  • Bucket is created if it already doesn't exists

Environment

None

Potential Workaround

None

Checklist

hide

TestRail: Results

Activity

Show:

Dmytro Popov March 11, 2020 at 8:02 AM

The documentation has been merged.

Kruthi Vuppala March 10, 2020 at 4:02 PM
Edited

Please merge the documentation as part of this story, and close it only after that

Dmytro Popov March 10, 2020 at 3:18 PM

According to the conversation in FOLIO-2499, it it looks like the bucket is to be created by the infastructure team and the name will be provided in the system property "bucket.name".

Marc Johnson March 6, 2020 at 3:17 PM

Thanks for those answers.

No, we do not have a way for the user to access the files without S3

If an environment has no access to S3 (and hence no configuration), will it be possible to activate the export modules (and they only won't work) for a tenant, or will they need to be removed from those installations of 2020 Q1?

Kruthi Vuppala March 6, 2020 at 3:04 PM

Is data export going to be included in 2020 Q1?

Yes , we plan on releasing mod-data-export for Q1

Will data export work without S3 (maybe in a limited capacity)?

No, we do not have a way for the user to access the files without S3

How do we communicate any limitations to adopters?

Included a note on https://folio-org.atlassian.net/wiki/pages/viewpage.action?pageId=5210284. The read me is still WIP along with this story. There will be clear instructions about the limitations in the Read me as well

How do we communicate configuration instructions (once that is decided)?

The module README will have all necessary details. Also the limitation will be highlighted in the release notes of the module as well as the confluence page. If you think there is any other place that would make sense, please let us know we can add it there.

Done

Details

Assignee

Reporter

Tester Assignee

Priority

Story Points

Sprint

Development Team

Fix versions

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created February 21, 2020 at 9:39 PM
Updated March 26, 2020 at 7:29 PM
Resolved March 11, 2020 at 3:16 PM
TestRail: Cases
TestRail: Runs