mirror of
https://github.com/open-webui/open-webui.git
synced 2026-03-11 00:04:08 -05:00
issue: Support for OpenStack Cloud S3 #5119
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Sabian-A on GitHub (May 9, 2025).
Check Existing Issues
Installation Method
Git Clone
Open WebUI Version
0.6.7
Ollama Version (if applicable)
No response
Operating System
Kubernetes
Browser (if applicable)
No response
Confirmation
README.md.Expected Behavior
When attempting to upload a file with storage set to s3, the application should upload
Actual Behavior
When attempting to upload a file using OpenStack's S3-compatible object storage, the application crashes with the following error:
RuntimeError: Error uploading file to S3: An error occurred (NotImplemented) when calling the PutObjectTagging operation: The requested resource is not implemented
This issue seems to stem from the use of the PutObjectTagging API, which is not implemented in some S3-compatible backends like OpenStack Swift.
Suggested Fix:
To ensure compatibility with OpenStack-based S3 providers, consider making tagging optional or providing a fallback when PutObjectTagging is not supported.
Environment:
Backend: OpenStack Swift with S3 API enabled
Error Location: open_webui/storage/provider.py, line 157
Operation: File upload
Please add support or a workaround for this scenario to enable broader cloud compatibility.
Steps to Reproduce
use kubernetes helm chart to deploy the application with persistence provider set to s3 and on s3 compatable openstack-cloud s3
Logs & Screenshots
Traceback (most recent call last):
File "/usr/local/lib/python3.11/threading.py", line 1002, in _bootstrap
self._bootstrap_inner()
│ └ <function Thread._bootstrap_inner at 0x7fd0aeb28860>
└ <WorkerThread(AnyIO worker thread, started 140532524246720)>
File "/usr/local/lib/python3.11/threading.py", line 1045, in _bootstrap_inner
self.run()
│ └ <function WorkerThread.run at 0x7fd04754a0c0>
└ <WorkerThread(AnyIO worker thread, started 140532524246720)>
File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 967, in run
result = context.run(func, *args)
│ │ │ └ ()
│ │ └ functools.partial(<function upload_file at 0x7fd080f09300>, user=UserModel(id='7736ee2b-af30-4def-967a-44746b4a1a5b', name='A...
│ └ <method 'run' of '_contextvars.Context' objects>
└ <_contextvars.Context object at 0x7fd0475db240>
File "/app/backend/open_webui/storage/provider.py", line 157, in upload_file
raise RuntimeError(f"Error uploading file to S3: {e}")
RuntimeError: Error uploading file to S3: An error occurred (NotImplemented) when calling the PutObjectTagging operation: The requested resource is not implemented
Additional Information
No response