Save of settings failed #63
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
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?
I wanted to save settings in the settings panel.
Response UI: ❌ Failed to save
Response Docker Log: whisper-transcribe-1 | Traceback (most recent call last):
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 421, in run_asgi
whisper-transcribe-1 | result = await app( # type: ignore[func-returns-value]
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 56, in call
whisper-transcribe-1 | return await self.app(scope, receive, send)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/applications.py", line 1159, in call
whisper-transcribe-1 | await super().call(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/applications.py", line 90, in call
whisper-transcribe-1 | await self.middleware_stack(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in call
whisper-transcribe-1 | raise exc
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in call
whisper-transcribe-1 | await self.app(scope, receive, _send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/cors.py", line 96, in call
whisper-transcribe-1 | await self.simple_response(scope, receive, send, request_headers=headers)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/cors.py", line 154, in simple_response
whisper-transcribe-1 | await self.app(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 63, in call
whisper-transcribe-1 | await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
whisper-transcribe-1 | raise exc
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
whisper-transcribe-1 | await app(scope, receive, sender)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in call
whisper-transcribe-1 | await self.app(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/routing.py", line 660, in call
whisper-transcribe-1 | await self.middleware_stack(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/routing.py", line 680, in app
whisper-transcribe-1 | await route.handle(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/routing.py", line 276, in handle
whisper-transcribe-1 | await self.app(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 134, in app
whisper-transcribe-1 | await wrap_app_handling_exceptions(app, request)(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
whisper-transcribe-1 | raise exc
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
whisper-transcribe-1 | await app(scope, receive, sender)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 120, in app
whisper-transcribe-1 | response = await f(request)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 674, in app
whisper-transcribe-1 | raw_response = await run_endpoint_function(
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 328, in run_endpoint_function
whisper-transcribe-1 | return await dependant.call(**values)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/src/api/routes.py", line 439, in update_settings
whisper-transcribe-1 | config_path.write_text(yaml.dump(existing, default_flow_style=False, sort_keys=False))
whisper-transcribe-1 | File "/usr/lib/python3.11/pathlib.py", line 1078, in write_text
whisper-transcribe-1 | with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/usr/lib/python3.11/pathlib.py", line 1044, in open
whisper-transcribe-1 | return io.open(self, mode, buffering, encoding, errors, newline)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | OSError: [Errno 30] Read-only file system: 'settings.yaml'
whisper-transcribe-1 | INFO: 172.24.0.1:56326 - "PUT /api/v1/settings HTTP/1.1" 500 Internal Server Error
whisper-transcribe-1 | ERROR: Exception in ASGI application
whisper-transcribe-1 | Traceback (most recent call last):
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 421, in run_asgi
whisper-transcribe-1 | result = await app( # type: ignore[func-returns-value]
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 56, in call
whisper-transcribe-1 | return await self.app(scope, receive, send)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/applications.py", line 1159, in call
whisper-transcribe-1 | await super().call(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/applications.py", line 90, in call
whisper-transcribe-1 | await self.middleware_stack(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in call
whisper-transcribe-1 | raise exc
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in call
whisper-transcribe-1 | await self.app(scope, receive, _send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/cors.py", line 96, in call
whisper-transcribe-1 | await self.simple_response(scope, receive, send, request_headers=headers)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/cors.py", line 154, in simple_response
whisper-transcribe-1 | await self.app(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 63, in call
whisper-transcribe-1 | await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
whisper-transcribe-1 | raise exc
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
whisper-transcribe-1 | await app(scope, receive, sender)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in call
whisper-transcribe-1 | await self.app(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/routing.py", line 660, in call
whisper-transcribe-1 | await self.middleware_stack(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/routing.py", line 680, in app
whisper-transcribe-1 | await route.handle(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/routing.py", line 276, in handle
whisper-transcribe-1 | await self.app(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 134, in app
whisper-transcribe-1 | await wrap_app_handling_exceptions(app, request)(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
whisper-transcribe-1 | raise exc
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
whisper-transcribe-1 | await app(scope, receive, sender)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 120, in app
whisper-transcribe-1 | response = await f(request)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 674, in app
whisper-transcribe-1 | raw_response = await run_endpoint_function(
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 328, in run_endpoint_function
whisper-transcribe-1 | return await dependant.call(**values)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/src/api/routes.py", line 439, in update_settings
whisper-transcribe-1 | config_path.write_text(yaml.dump(existing, default_flow_style=False, sort_keys=False))
whisper-transcribe-1 | File "/usr/lib/python3.11/pathlib.py", line 1078, in write_text
whisper-transcribe-1 | with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/usr/lib/python3.11/pathlib.py", line 1044, in open
whisper-transcribe-1 | return io.open(self, mode, buffering, encoding, errors, newline)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | OSError: [Errno 30] Read-only file system: 'settings.yaml'
whisper-transcribe-1 | INFO: 172.24.0.1:57638 - "GET /api/v1/chunks?page=1&page_size=10 HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 172.24.0.1:57648 - "GET /api/v1/chunks?page=1&page_size=10 HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 127.0.0.1:47792 - "GET /api/v1/health HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 172.24.0.1:57656 - "GET /api/v1/chunks?page=1&page_size=10 HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 172.24.0.1:57658 - "GET /api/v1/chunks?page=1&page_size=10 HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 172.24.0.1:57670 - "GET /api/v1/chunks?page=1&page_size=10 HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 172.24.0.1:57676 - "GET /api/v1/chunks?page=1&page_size=10 HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 172.24.0.1:57688 - "GET /api/v1/chunks?page=1&page_size=10 HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 172.24.0.1:57692 - "GET /api/v1/chunks?page=1&page_size=10 HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 127.0.0.1:37284 - "GET /api/v1/health HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 172.24.0.1:45238 - "GET /api/v1/settings HTTP/1.1" 200 OK
whisper-transcribe-1 | INFO: 172.24.0.1:45246 - "PUT /api/v1/settings HTTP/1.1" 500 Internal Server Error
whisper-transcribe-1 | ERROR: Exception in ASGI application
whisper-transcribe-1 | Traceback (most recent call last):
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 421, in run_asgi
whisper-transcribe-1 | result = await app( # type: ignore[func-returns-value]
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 56, in call
whisper-transcribe-1 | return await self.app(scope, receive, send)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/applications.py", line 1159, in call
whisper-transcribe-1 | await super().call(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/applications.py", line 90, in call
whisper-transcribe-1 | await self.middleware_stack(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in call
whisper-transcribe-1 | raise exc
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in call
whisper-transcribe-1 | await self.app(scope, receive, _send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/cors.py", line 96, in call
whisper-transcribe-1 | await self.simple_response(scope, receive, send, request_headers=headers)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/cors.py", line 154, in simple_response
whisper-transcribe-1 | await self.app(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 63, in call
whisper-transcribe-1 | await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
whisper-transcribe-1 | raise exc
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
whisper-transcribe-1 | await app(scope, receive, sender)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in call
whisper-transcribe-1 | await self.app(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/routing.py", line 660, in call
whisper-transcribe-1 | await self.middleware_stack(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/routing.py", line 680, in app
whisper-transcribe-1 | await route.handle(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/routing.py", line 276, in handle
whisper-transcribe-1 | await self.app(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 134, in app
whisper-transcribe-1 | await wrap_app_handling_exceptions(app, request)(scope, receive, send)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
whisper-transcribe-1 | raise exc
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
whisper-transcribe-1 | await app(scope, receive, sender)
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 120, in app
whisper-transcribe-1 | response = await f(request)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 674, in app
whisper-transcribe-1 | raw_response = await run_endpoint_function(
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/.venv/lib/python3.11/site-packages/fastapi/routing.py", line 328, in run_endpoint_function
whisper-transcribe-1 | return await dependant.call(**values)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/app/src/api/routes.py", line 439, in update_settings
whisper-transcribe-1 | config_path.write_text(yaml.dump(existing, default_flow_style=False, sort_keys=False))
whisper-transcribe-1 | File "/usr/lib/python3.11/pathlib.py", line 1078, in write_text
whisper-transcribe-1 | with self.open(mode='w', encoding=encoding, errors=errors, newline=newline) as f:
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | File "/usr/lib/python3.11/pathlib.py", line 1044, in open
whisper-transcribe-1 | return io.open(self, mode, buffering, encoding, errors, newline)
whisper-transcribe-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
whisper-transcribe-1 | OSError: [Errno 30] Read-only file system: 'settings.yaml'
Response Browser Console:
(index):1582
PUT https://192.168.178.50/api/v1/settings 500 (Internal Server Error)
(anonymous) @ (index):1582
Save of settings shall work. Maybe settings.yaml is readonly, so only update the current config classes. Maybe it could be difficult to override settings.yaml while docker runs. So it would be okay to only update config model data on runtime to accept setting changes.