bartender.web.unroll#
Methods to rewrite the OpenAPI schema generated by FastAPI.
Functions#
|
Convert dynamic application routes to static routes. |
|
Unroll application routes. |
|
Unroll an application route. |
|
Generate the request schema for unrolling an application. |
|
Unroll interactive app routes. |
Module Contents#
- bartender.web.unroll.unroll_openapi(app: fastapi.FastAPI) None#
Convert dynamic application routes to static routes.
- Parameters:
app (fastapi.FastAPI) – FastAPI app
- Raises:
RuntimeError – If OpenAPI schema is not generated.
- Return type:
None
- bartender.web.unroll.unroll_application_routes(openapi_schema: dict[str, Any], applications: bartender.config.ApplicatonConfigurations) None#
Unroll application routes.
In openapi spec replaces /api/application/{application} with paths without {application}. Loops over config.applications and adds a put route for each.
- bartender.web.unroll.unroll_application_route(aname: str, config: bartender.config.ApplicatonConfiguration, existing_put_path: Any) dict[str, Any]#
Unroll an application route.
- Parameters:
aname (str) – Application name
config (bartender.config.ApplicatonConfiguration) – Application configuration
existing_put_path (Any) – Existing PUT path
- Returns:
Unrolled PUT path
- Return type:
- bartender.web.unroll.unroll_application_request_schema(aname: str, config: bartender.config.ApplicatonConfiguration) dict[str, Any]#
Generate the request schema for unrolling an application.
- Parameters:
aname (str) – The name of the application.
config (bartender.config.ApplicatonConfiguration) – The configuration for the application.
- Returns:
The generated request schema.
- Return type:
- bartender.web.unroll.unroll_interactive_app_routes(openapi_schema: dict[str, Any], interactive_applications: bartender.config.InteractiveApplicationConfigurations) None#
Unroll interactive app routes.
Replaces /api/job/{jobid}/interactive/{application} with paths without {application}. Loops over config.interactive_applications and adds a post route for each.