-
Notifications
You must be signed in to change notification settings - Fork 88
Description
Request
The webui server settings JSON configuration needs to support custom S3 endpoint URLs to enable compatibility with S3-compatible storage services such as MinIO, Ceph, and other object storage providers.
Currently, the clp_config.py schema supports endpoint_url in the S3Config model thanks to #1758 :
class S3Config(BaseModel):
endpoint_url: str | None = None
region_code: NonEmptyStr | None = None
bucket: NonEmptyStr
key_prefix: str
aws_authentication: AwsAuthenticationHowever, the webui server settings in configmap.yaml only includes:
StreamFilesS3RegionStreamFilesS3PathPrefixStreamFilesS3Profile
It does not include a field for StreamFilesS3EndpointUrl (or similar), which prevents the webui from connecting to non-AWS S3 endpoints.
This is important because:
- Many organizations use self-hosted S3-compatible storage (MinIO, Ceph, etc.)
- The rest of the CLP components already support custom endpoints via
endpoint_url - Without this, the webui cannot serve stream files from custom S3 endpoints
Possible implementation
-
Add a
StreamFilesS3EndpointUrlfield to the webui server settings schema inwebui/server -
Update
controller.pyto pass the config to the webui -
Update the webui server code to use the endpoint URL when creating the S3 client for fetching stream files
The webui server TypeScript code would need to be updated to:
- Accept the new
StreamFilesS3EndpointUrlsetting - Pass the endpoint URL to the AWS S3 SDK client configuration