QuantStack / jupyter-drives

Jupyter Server supporting JupyterLab IDrive
BSD 3-Clause "New" or "Revised" License
2 stars 4 forks source link

Set up backend structure and list all available drives #3

Closed DenisaCG closed 10 months ago

DenisaCG commented 11 months ago

Set up the backend structure.

Created managers as an abstraction layer to enable extensibility, namely for the providers. For this purpose, a base manager class JupyterDrivesManager was created, and the corresponding parent class S3Manager. The entrypoints package is also used to list providers for the managers.

A base handler class was also instated, as JupyterDrivesAPIHandler. All other handlers implement their logic on top of it. To make it as simple and extensible as possible, the handlers and endpoint responses are meant to be provider independent.

In base.py, we handle the provider selection based on jupyter_notebook_config.py, through the DrivesConfig class. The user can set a session token, a secret access token and an access key id to enable access to the desired S3 drives.

github-actions[bot] commented 11 months ago

Binder :point_left: Launch a Binder on branch DenisaCG/jupyter-drives/listAvailableDrives

DenisaCG commented 10 months ago

Thanks for the review and suggestions @fcollonval!

DenisaCG commented 10 months ago

Thanks for the additional comments, @fcollonval! All of this has been improved in https://github.com/QuantStack/jupyter-drives/pull/9 (the credentials errors are still a work in progress, but will be pushed to the same PR).