forked from hans/Nominatim
add wsgi entry point for starlette
uvicorn needs a parameter-free function to start.
This commit is contained in:
@@ -60,7 +60,8 @@ def _wrap_endpoint(func: api_impl.EndpointFunc)\
|
|||||||
|
|
||||||
|
|
||||||
def get_application(project_dir: Path,
|
def get_application(project_dir: Path,
|
||||||
environ: Optional[Mapping[str, str]] = None) -> Starlette:
|
environ: Optional[Mapping[str, str]] = None,
|
||||||
|
debug: bool = True) -> Starlette:
|
||||||
""" Create a Nominatim falcon ASGI application.
|
""" Create a Nominatim falcon ASGI application.
|
||||||
"""
|
"""
|
||||||
config = Configuration(project_dir, environ)
|
config = Configuration(project_dir, environ)
|
||||||
@@ -77,8 +78,14 @@ def get_application(project_dir: Path,
|
|||||||
if config.get_bool('CORS_NOACCESSCONTROL'):
|
if config.get_bool('CORS_NOACCESSCONTROL'):
|
||||||
middleware.append(Middleware(CORSMiddleware, allow_origins=['*']))
|
middleware.append(Middleware(CORSMiddleware, allow_origins=['*']))
|
||||||
|
|
||||||
app = Starlette(debug=True, routes=routes, middleware=middleware)
|
app = Starlette(debug=debug, routes=routes, middleware=middleware)
|
||||||
|
|
||||||
app.state.API = NominatimAPIAsync(project_dir, environ)
|
app.state.API = NominatimAPIAsync(project_dir, environ)
|
||||||
|
|
||||||
return app
|
return app
|
||||||
|
|
||||||
|
|
||||||
|
def run_wsgi() -> Starlette:
|
||||||
|
""" Entry point for uvicorn.
|
||||||
|
"""
|
||||||
|
return get_application(Path('.'), debug=False)
|
||||||
|
|||||||
Reference in New Issue
Block a user