Added process.exit and database connection shutdown

This commit is contained in:
WoLfulus
2020-10-01 13:16:41 -03:00
parent 2a77c0cb07
commit 9fda1a91ed

View File

@@ -1,11 +1,13 @@
import knex from 'knex';
import logger from '../../logger';
import { Express } from 'express';
export default async function start() {
const { default: env } = require('../../env');
const { validateDBConnection } = require('../../database');
const database = require('../../database');
const connection = database.default as knex;
await validateDBConnection();
await database.validateDBConnection();
const app: Express = require('../../app').default;
@@ -20,10 +22,25 @@ export default async function start() {
process.on(signal, () =>
server.close((err) => {
if (err) {
logger.error(err.message, { err });
return;
logger.error(`Failed to close server: ${err.message}`, {
err,
});
process.exit(1);
}
logger.info('Server stopped.');
connection
.destroy()
.then(() => {
logger.info('Database connection stopped.');
process.exit(0);
})
.catch((err) => {
logger.info(`Failed to destroy database connections: ${err.message}`, {
err,
});
process.exit(1);
});
})
);
});