Skip to content

Azurite V3 Table

xiaonlimsft edited this page Jul 28, 2020 · 11 revisions

Welcome to the Azurite Azurite V3 Table project!

Pick up an TODO

Open https://github.com/Azure/Azurite/projects/2 and find out a open issue in TODO column. Assign the opened issue to yourself, or leave a message in the issue.

Or use following queries for all opening TODO items:

Development

  • Install git.
  • Install Node.js 12.
  • Fork Azurite repo.
  • Clone Azurite to local. git clone https://github.com/yourgithubaccount/Azurite
  • Checkout to table branch. cd Azurite git checkout table
  • Open Azurite folder with Visual Studio Code. code .
  • Install any recommended extensions recommended by Visual Studio Code.
  • Install Azurite dependencies. npm install.

Sample

Take Create Table implementation as example for your contribution:

For most of RESTFul API implementation, there are 2 major parts to implement: Handler (TableHandler or ServiceHandler), and MetadataStore (LokiTableMetadataStore). LokiTableMetadataStore handles logic to persist metedata data and operate with LokiJS database. Methods provided in LokiTableMetadataStore should 1:1 mapping to Handler methods.

For other features, you can also go to Azurite blob or queue implementation for reference.

Debug

Click F5 in Visual Studio Code to start Azurite project. debug.log will be in project root for reference.

Refer to https://github.com/Azure/Azurite/wiki/Postman-Table-API to quickly import Table APIs to debug in Postman.

Testing

Always add a test case for the implementation.

Contribution

Send PR to table branch of Azurite V3. We will give feedbacks within several business days.

Report issues

@me in your PR or picked up issue

Clone this wiki locally