[PR #8580] [MERGED] Split the storage providers into separate classes in preparation for adding more cloud providers #9048

Closed
opened 2025-11-11 18:12:41 -06:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/open-webui/open-webui/pull/8580
Author: @rragundez
Created: 1/15/2025
Status: Merged
Merged: 1/16/2025
Merged by: @tjbck

Base: devHead: split-storage-providers


📝 Commits (9)

  • a3f737c Split the storage providers into separate classes in preparation for other storage providers like GCS
  • 0129255 Set default storage provider to local
  • dd16c3d add function to retrieve the storage provider so it can be easily tested
  • 535e59a Start testing files for provider
  • 3aa28de Add test classes for the providers
  • 357e7dd Add tests for local provider
  • 021c1f3 Add test for S3 using moto
  • 544243f Add moto as a dependency
  • f14467c Update dependencies to include mock

📊 Changes

5 files changed (+910 additions, -576 deletions)

View changed files

📝 backend/open_webui/config.py (+8 -8)
📝 backend/open_webui/storage/provider.py (+84 -102)
backend/open_webui/test/apps/webui/storage/test_provider.py (+173 -0)
📝 pyproject.toml (+1 -0)
📝 uv.lock (+644 -466)

📄 Description

Split the storage providers into separate classes in preparation for adding more cloud providers.

Suggested in #5763

Once merged after any modifications I will add the GCS storage provider which is actually the reason for me to contribute as I need it, to not hack my way into it.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/open-webui/open-webui/pull/8580 **Author:** [@rragundez](https://github.com/rragundez) **Created:** 1/15/2025 **Status:** ✅ Merged **Merged:** 1/16/2025 **Merged by:** [@tjbck](https://github.com/tjbck) **Base:** `dev` ← **Head:** `split-storage-providers` --- ### 📝 Commits (9) - [`a3f737c`](https://github.com/open-webui/open-webui/commit/a3f737c0c6e1c15729db45d7e7990a3891aeacc8) Split the storage providers into separate classes in preparation for other storage providers like GCS - [`0129255`](https://github.com/open-webui/open-webui/commit/0129255478e48e7cc5cc7624dfdc0a8e16c75a0f) Set default storage provider to local - [`dd16c3d`](https://github.com/open-webui/open-webui/commit/dd16c3d5c1bc275f5d42c2694ea2927c792fe9a0) add function to retrieve the storage provider so it can be easily tested - [`535e59a`](https://github.com/open-webui/open-webui/commit/535e59af8df5d2a3116876d21acbc306226c087d) Start testing files for provider - [`3aa28de`](https://github.com/open-webui/open-webui/commit/3aa28de5f168add8df7c6b879d5f3fd974bf744d) Add test classes for the providers - [`357e7dd`](https://github.com/open-webui/open-webui/commit/357e7dd20f39a280c3cbf7ac040cc6cf730338fd) Add tests for local provider - [`021c1f3`](https://github.com/open-webui/open-webui/commit/021c1f39001369439bb8505ea2b0dac1b60bf32e) Add test for S3 using moto - [`544243f`](https://github.com/open-webui/open-webui/commit/544243fabb90c6bb3e61fb84f1299413c5131461) Add moto as a dependency - [`f14467c`](https://github.com/open-webui/open-webui/commit/f14467c65ed252e79d74e124857e1daa106d336f) Update dependencies to include mock ### 📊 Changes **5 files changed** (+910 additions, -576 deletions) <details> <summary>View changed files</summary> 📝 `backend/open_webui/config.py` (+8 -8) 📝 `backend/open_webui/storage/provider.py` (+84 -102) ➕ `backend/open_webui/test/apps/webui/storage/test_provider.py` (+173 -0) 📝 `pyproject.toml` (+1 -0) 📝 `uv.lock` (+644 -466) </details> ### 📄 Description Split the storage providers into separate classes in preparation for adding more cloud providers. Suggested in #5763 Once merged after any modifications I will add the GCS storage provider which is actually the reason for me to contribute as I need it, to not hack my way into it. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2025-11-11 18:12:41 -06:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#9048