Files
Aleksei Sokol afe5d882ac
All checks were successful
Run linters on applied template / Python 3.13 lint and build (push) Successful in 56s
Initial commit
This is a FastAPI backend microservice template used with `copier` utility.

Features of applied template are:
- Configuration file processing logic
- Metrics and tracing (both optional) configuration available
- Debug endpoints
- Database migration commands, prepared Alembic environment
- Database usage example in ping_db endpoint
- gitea sanity check pipeline
2025-11-29 22:13:34 +03:00

17 lines
615 B
Django/Jinja

"""/system handlers logic is defined here."""
from sqlalchemy import select, text
from {{project_slug}}.db.connection.manager import PostgresConnectionManager
from {{project_slug}}.schemas.health_check import PingResponse
async def ping_db(connection_manager: PostgresConnectionManager, readonly: bool) -> PingResponse:
conn_future = connection_manager.get_connection() if not readonly else connection_manager.get_ro_connection()
query = select(text("1"))
async with conn_future as conn:
res = (await conn.execute(query)).scalar_one()
if res == 1:
return PingResponse()