/* |-------------------------------------------------------------------------- | HTTP server entrypoint |-------------------------------------------------------------------------- | | Boots the AdonisJS application and starts the HTTP server. | */ import 'reflect-metadata' import { Ignitor, prettyPrintError } from '@adonisjs/core' const APP_ROOT = new URL('../', import.meta.url) const IMPORTER = (filePath: string) => { if (filePath.startsWith('./') || filePath.startsWith('../')) { return import(new URL(filePath, APP_ROOT).href) } return import(filePath) } new Ignitor(APP_ROOT, { importer: IMPORTER }) .tap((app) => { app.booting(async () => { await import('#start/env') }) app.listen('SIGTERM', () => app.terminate()) app.listenIf(app.managedByPm2, 'SIGINT', () => app.terminate()) }) .httpServer() .start() .catch((error) => { process.exitCode = 1 prettyPrintError(error) })