|
10 | 10 | create_prometheus_instrumentationmain_input_state, |
11 | 11 | prometheus_instrumentation_lifespan, |
12 | 12 | ) |
| 13 | +from servicelib.fastapi.redis_lifespan import ( |
| 14 | + RedisLifespanState, |
| 15 | + redis_database_lifespan, |
| 16 | +) |
| 17 | +from settings_library.redis import RedisDatabase |
13 | 18 |
|
14 | | -from .._meta import APP_FINISHED_BANNER_MSG, APP_STARTED_BANNER_MSG |
| 19 | +from .._meta import APP_FINISHED_BANNER_MSG, APP_NAME, APP_STARTED_BANNER_MSG |
15 | 20 | from ..api.rpc.events import rpc_api_lifespan |
16 | 21 | from ..clients.director import director_lifespan |
17 | 22 | from ..clients.rabbitmq import rabbitmq_lifespan |
@@ -43,6 +48,11 @@ async def _settings_lifespan(app: FastAPI) -> AsyncIterator[State]: |
43 | 48 | settings: ApplicationSettings = app.state.settings |
44 | 49 |
|
45 | 50 | yield { |
| 51 | + **RedisLifespanState( |
| 52 | + REDIS_SETTINGS=settings.CATALOG_REDIS, |
| 53 | + REDIS_CLIENT_NAME=APP_NAME, |
| 54 | + REDIS_CLIENT_DB=RedisDatabase.LOCKS, |
| 55 | + ).model_dump(), |
46 | 56 | **create_postgres_database_input_state(settings.CATALOG_POSTGRES), |
47 | 57 | **create_prometheus_instrumentationmain_input_state( |
48 | 58 | enabled=settings.CATALOG_PROMETHEUS_INSTRUMENTATION_ENABLED |
@@ -70,7 +80,9 @@ def create_app_lifespan() -> LifespanManager: |
70 | 80 | # - function services |
71 | 81 | app_lifespan.add(function_services_lifespan) |
72 | 82 |
|
| 83 | + # - redis |
73 | 84 | # - background task |
| 85 | + app_lifespan.add(redis_database_lifespan) |
74 | 86 | app_lifespan.add(background_task_lifespan) |
75 | 87 |
|
76 | 88 | # - prometheus instrumentation |
|
0 commit comments