feat(backend): add fastify api, auth, prisma schema and jobs
This commit is contained in:
32
apps/backend/src/index.ts
Normal file
32
apps/backend/src/index.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
import { buildApp } from './app.js';
|
||||
import { env } from './config/env.js';
|
||||
|
||||
async function main(): Promise<void> {
|
||||
const app = await buildApp();
|
||||
try {
|
||||
await app.listen({ port: env.BACKEND_PORT, host: '0.0.0.0' });
|
||||
} catch (err) {
|
||||
app.log.error({ err }, 'failed to start');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
const shutdown = async (signal: NodeJS.Signals) => {
|
||||
app.log.info({ signal }, 'shutting down');
|
||||
try {
|
||||
await app.close();
|
||||
process.exit(0);
|
||||
} catch (err) {
|
||||
app.log.error({ err }, 'shutdown error');
|
||||
process.exit(1);
|
||||
}
|
||||
};
|
||||
|
||||
process.on('SIGTERM', () => {
|
||||
void shutdown('SIGTERM');
|
||||
});
|
||||
process.on('SIGINT', () => {
|
||||
void shutdown('SIGINT');
|
||||
});
|
||||
}
|
||||
|
||||
void main();
|
||||
Reference in New Issue
Block a user