Skip to content
Snippets Groups Projects
server.py 717 B
Newer Older
  • Learn to ignore specific revisions
  • from . import worker
    
    from . import settings
    from aiohttp import web
    
    
    def prepare_app(app, pool):
        app.router.add_get("/api/domains", routes.domains)
        app.router.add_post("/api/domains", routes.domains)
    
        app["pool"] = pool
    
        app["crawler"] = worker.Crawler(
            redis_settings=arq.RedisSettings(**settings.REDIS_CONFIG)
        )
    
    
    
    async def on_shutdown(app):
        if app["pool"]:
            app["pool"].close()
            await app["pool"].wait_closed()
    
    
    
    Eliot Berriot's avatar
    Eliot Berriot committed
    def start(port=None):
    
        app = web.Application(middlewares=settings.MIDDLEWARES)
        prepare_app(app, None)
        app.on_shutdown.append(on_shutdown)
    
    Eliot Berriot's avatar
    Eliot Berriot committed
        web.run_app(app, port=port)