Files
directus/api/src/cli/commands/start.ts
2020-09-25 11:36:25 -03:00

31 lines
709 B
TypeScript

import logger from '../../logger';
import { Express } from 'express';
export default async function start() {
const { default: env } = require('../../env');
const { validateDBConnection } = require('../../database');
await validateDBConnection();
const app: Express = require('../../app').default;
const port = env.PORT;
const server = app.listen(port, () => {
logger.info(`Server started at port ${port}`);
});
const signals: NodeJS.Signals[] = ['SIGHUP', 'SIGINT', 'SIGTERM'];
signals.forEach((signal) => {
process.on(signal, () =>
server.close((err) => {
if (err) {
logger.error(err.message, { err });
return;
}
logger.info('Server stopped.');
})
);
});
}