llama-deploy-appserver 0.3.0a18__tar.gz → 0.3.0a20__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (21) hide show
  1. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/PKG-INFO +2 -2
  2. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/pyproject.toml +2 -2
  3. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/app.py +21 -1
  4. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/README.md +0 -0
  5. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/__init__.py +0 -0
  6. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/bootstrap.py +0 -0
  7. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/configure_logging.py +0 -0
  8. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/correlation_id.py +0 -0
  9. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/deployment.py +0 -0
  10. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/deployment_config_parser.py +0 -0
  11. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/interrupts.py +0 -0
  12. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/process_utils.py +0 -0
  13. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/py.typed +0 -0
  14. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/routers/__init__.py +0 -0
  15. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/routers/deployments.py +0 -0
  16. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/routers/status.py +0 -0
  17. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/routers/ui_proxy.py +0 -0
  18. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/settings.py +0 -0
  19. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/stats.py +0 -0
  20. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/types.py +0 -0
  21. {llama_deploy_appserver-0.3.0a18 → llama_deploy_appserver-0.3.0a20}/src/llama_deploy/appserver/workflow_loader.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: llama-deploy-appserver
3
- Version: 0.3.0a18
3
+ Version: 0.3.0a20
4
4
  Summary: Application server components for LlamaDeploy
5
5
  Author: Massimiliano Pippi
6
6
  Author-email: Massimiliano Pippi <mpippi@gmail.com>
@@ -10,7 +10,7 @@ Requires-Dist: pydantic-settings>=2.10.1
10
10
  Requires-Dist: uvicorn>=0.24.0
11
11
  Requires-Dist: fastapi>=0.100.0
12
12
  Requires-Dist: websockets>=12.0
13
- Requires-Dist: llama-deploy-core>=0.3.0a18,<0.4.0
13
+ Requires-Dist: llama-deploy-core>=0.3.0a20,<0.4.0
14
14
  Requires-Dist: httpx>=0.24.0,<1.0.0
15
15
  Requires-Dist: prometheus-fastapi-instrumentator>=7.1.0
16
16
  Requires-Dist: packaging>=25.0
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "llama-deploy-appserver"
3
- version = "0.3.0a18"
3
+ version = "0.3.0a20"
4
4
  description = "Application server components for LlamaDeploy"
5
5
  readme = "README.md"
6
6
  license = { text = "MIT" }
@@ -14,7 +14,7 @@ dependencies = [
14
14
  "uvicorn>=0.24.0",
15
15
  "fastapi>=0.100.0",
16
16
  "websockets>=12.0",
17
- "llama-deploy-core>=0.3.0a18,<0.4.0",
17
+ "llama-deploy-core>=0.3.0a20,<0.4.0",
18
18
  "httpx>=0.24.0,<1.0.0",
19
19
  "prometheus-fastapi-instrumentator>=7.1.0",
20
20
  "packaging>=25.0",
@@ -13,6 +13,7 @@ import uvicorn
13
13
  from fastapi import FastAPI
14
14
  from fastapi.middleware.cors import CORSMiddleware
15
15
  from fastapi.openapi.utils import get_openapi
16
+ from fastapi.responses import RedirectResponse
16
17
  from llama_deploy.appserver.configure_logging import (
17
18
  add_log_middleware,
18
19
  setup_logging,
@@ -94,6 +95,18 @@ async def lifespan(app: FastAPI) -> AsyncGenerator[None, Any]:
94
95
  # otherwise serve the pre-built if available
95
96
  mount_static_files(app, config, settings)
96
97
 
98
+ @app.get(f"/deployments/{config.name}")
99
+ @app.get(f"/deployments/{config.name}/")
100
+ @app.get(f"/deployments/{config.name}/ui")
101
+ def redirect_to_ui() -> RedirectResponse:
102
+ return RedirectResponse(f"/deployments/{config.name}/ui/")
103
+ else:
104
+
105
+ @app.get(f"/deployments/{config.name}")
106
+ @app.get(f"/deployments/{config.name}/")
107
+ def redirect_to_docs() -> RedirectResponse:
108
+ return RedirectResponse(f"/deployments/{config.name}/docs")
109
+
97
110
  apiserver_state.state("running")
98
111
  yield
99
112
 
@@ -144,7 +157,14 @@ def _setup_openapi(name: str, app: FastAPI, server: WorkflowServer) -> None:
144
157
  app.openapi = custom_openapi # ty: ignore[invalid-assignment] - doesn't like us overwriting the method
145
158
 
146
159
 
147
- app = FastAPI(lifespan=lifespan)
160
+ _config = get_deployment_config()
161
+ _prefix = f"/deployments/{_config.name}"
162
+ app = FastAPI(
163
+ lifespan=lifespan,
164
+ docs_url=_prefix + "/docs",
165
+ redoc_url=_prefix + "/redoc",
166
+ openapi_url=_prefix + "/openapi.json",
167
+ )
148
168
  Instrumentator().instrument(app).expose(app)
149
169
 
150
170