Azure / Azure/Azurite

Azurite as Cloud Storage Bridge

Open
#1,094 1 comment 0 reactions 1 assignee Claimed by @Poku8 View on GitHub
NewArch stale
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

![image](https://user-images.githubusercontent.com/6889160/137291390-5f29bfa4-66f8-4698-8ec2-70bdf399dbb6.png)

2. Objects mapped to blobs

![image](https://user-images.githubusercontent.com/6889160/137291524-1f7cdb67-bdf3-411e-8902-dde520adea36.png)

3. Download

![image](https://user-images.githubusercontent.com/6889160/137291904-b97c15e2-b96a-42fb-bea4-3a11a71be83c.png)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.