30 lines
1.0 KiB
TypeScript
30 lines
1.0 KiB
TypeScript
import { PikkuFastifyServer } from "@pikku/fastify"
|
|
|
|
import { createConfig } from "@perauset/functions/src/config.js"
|
|
import { createSingletonServices } from "@perauset/functions/src/services.js"
|
|
|
|
import "@perauset/functions/.pikku/pikku-bootstrap.gen.js"
|
|
import "@perauset/functions/src/middleware.js"
|
|
import "@perauset/functions/src/wirings/auth.wiring.js"
|
|
import "@perauset/functions/src/wirings/http.wiring.js"
|
|
import "@perauset/functions/src/wirings/http-phase1b.wiring.js"
|
|
import "@perauset/functions/src/wirings/http-phase2.wiring.js"
|
|
import "@perauset/functions/src/lib/permissions.js"
|
|
|
|
async function main(): Promise<void> {
|
|
try {
|
|
const config = await createConfig()
|
|
const singletonServices = await createSingletonServices(config)
|
|
const appServer = new PikkuFastifyServer(config, singletonServices.logger)
|
|
|
|
appServer.enableExitOnSigInt()
|
|
await appServer.init({ exposeErrors: true })
|
|
await appServer.start()
|
|
} catch (e: any) {
|
|
console.error(e.toString())
|
|
process.exit(1)
|
|
}
|
|
}
|
|
|
|
main()
|