Port content operations to use Django's Storage class #5698
Labels
DEV: backend
Python, databases, networking, filesystem...
TAG: dev experience
Build performance, linting, debugging...
TAG: tech update / debt
Change not visible to user
TODO: needs clarification
Insufficient information to proceed
One of the difficulties in managing Kolibri in a cloud setting is its hard requirement for a filesystem. That's because we hard code file
open
,write
andread
calls. That requires us to have a shared filesystem among different replicas.We should port Kolibri to use the Django Storage class for content storage interaction. Django comes with a filesystem storage backend that should maintain compatibility with our current setup. But this additional abstraction will then allow us to use Google Cloud Storage, Amazon S3 or Minio.
Allowing different Storage backends will not only make Kolibri on Cloud setups more reliable, but also make hosting cheaper in the short term, and A LOT cheaper in the long term.
The text was updated successfully, but these errors were encountered: