Azurite as Cloud Storage Bridge
- Dominant language
- TypeScript
- Stars
- 2.3k
- Forks
- 393
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 36
Description
## Azurite as Cloud Storage Bridge
Take branch https://github.com/xiaoningliu/azurite/tree/bridge as base branch. We need following changes. After the changes, we will be able to have an E2E demo about using Azure Storage Explorer and Azure CLI connection to an AWS S3 account and download data.
### Setup
https://github.com/Azure/Azurite/tree/bridge#azurite-as-cloud-storage-bridge
### Contribution
Contribution is welcome!
Refer to commits in 953ef2aa6890f263836c3abbb4c6da59595f74ca
### TODO
- [X] Update AccountMetaStore to support mapping between storage accounts with S3 buckets from `AZURITE_ACCOUNTS` environment variable
- [X] Update ServiceHandler to support List Containers (mapped to List Buckets)
- [X] Update ContainerHandler to support List Blobs (mapped to List Objects)
- [X] Update BlobHandler to support Get Blob Properties (mapped to Get Object)
- [X] Update BlobHandler to support Get Blob (mapped to Get Object)
- [X] Create a VSC debug entry for S3BlobServer (We can leverage existing entry "Azurite Service - Loki" with customized `AZURITE_ACCOUNTS` environment variable)
- [X] E2E demo about using Azure Storage Explorer and Azure CLI connection to an AWS S3 account and download data
- [ ] Revisit above implementations and handle corner cases
- [ ] Other interesting APIs to map
- [ ] Create test cases
- [ ] Optimize and refactor to split S3 logic from handlers
### E2E Demo based on Azure Storage Explorer
1. Buckets mapped to containers

2. Objects mapped to blobs

3. Download

Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.