Auto-Rename / bot /web.py
github-actions[bot]
Automated sync from GitHub
58f00c9
Raw History Blame Contribute Delete
1.16 kB
"""Tiny health-check server.
A Hugging Face Docker Space expects something listening on its app port; your
cron pinger can hit ``/`` or ``/health`` to keep the Space awake.
"""
from __future__ import annotations
import logging
from aiohttp import web
from . import __version__, sysinfo
from .utils import human_uptime
log = logging.getLogger(__name__)
def make_app() -> web.Application:
async def index(_request: web.Request) -> web.Response:
return web.Response(text=f"Auto Rename Bot v{__version__} is running ✅\nuptime: {human_uptime(sysinfo.uptime())}\n")
async def health(_request: web.Request) -> web.Response:
return web.json_response({"status": "ok", "version": __version__, "uptime_seconds": int(sysinfo.uptime())})
app = web.Application()
app.router.add_get("/", index)
app.router.add_get("/health", health)
return app
async def start_web(port: int, host: str = "0.0.0.0") -> web.AppRunner:
runner = web.AppRunner(make_app(), access_log=None)
await runner.setup()
await web.TCPSite(runner, host, port).start()
log.info("health server listening on %s:%s", host, port)
return runner