CSP changes

In release-6.0.0 SunbirdED is going with cloud agnostic. To achieve this SunbirdED has built the SDK to help all the service use same code base as much as it can.

  1. Front-end SDK(Javascript) - SunbirdED team has created a node SDK that will be used by all the node services for implementing the cloud agnostic features. For more details please refer link https://github.com/Sunbird-Ed/client-cloud-services

  2. Backend SDK(JAVA) - SunbirdED Team has created a SDK in scala which is used by all the backend services to implement the cloud service features. For more details please refer link https://github.com/project-sunbird/sunbird-cloud-storage-sdk

  3. Large video(Chunk file upload) - The large video files are uploaded as chunks fron client-side(browser) itself. This logic will be different for each CSP provider. Hence for content editors, there is a new library created to support this. So this logic will be specific to CSP provider and for any CSP if it is not supporting, please feel free to contribute to the library. For more details please refer link https://knowlg.sunbird.org/use/release-notes/release-5.5.0#file-upload-library

SunbirdED has been tested in Azure Cloud provider and the application is working as expected.

Environment Varibles - CSP

Environment Variables - CSP

cloud_service_provider
cloud_public_storage_accountname
cloud_public_storage_secret
cloud_public_storage_endpoint
cloud_public_storage_region

cloud_private_storage_accountname
cloud_private_storage_secret
cloud_private_storage_endpoint
cloud_private_storage_region

CSP Implementation Table

Node SDK (client-cloud-services)

Cloud ProviderImplementedTested

Azure

Yes

Yes

AWS

Yes

No

GCP

Yes

No

OCI

Yes

No

Java SDK (sunbird-cloud-storage-sdk)

Cloud ProviderImplementedTested

Azure

Yes

Yes

AWS

Yes

No

GCP

Yes

No

OCI

Yes

No

Editor Plugin(sunbird-file-upload-library)

Cloud ProviderImplementedTested

Azure

Yes

Yes

AWS

No

No

GCP

No

No

OCI

No

No