mirror of
https://github.com/directus/directus.git
synced 2026-01-22 19:08:01 -05:00
add process signal processing
This commit is contained in:
@@ -11,3 +11,11 @@ trim_trailing_whitespace = true
|
||||
[{package.json,*.yml,*.yaml}]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
||||
[Dockerfile]
|
||||
indent_size = 2
|
||||
indent_style = tab
|
||||
|
||||
[Makefile]
|
||||
indent_size = 2
|
||||
indent_style = tab
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import logger from '../../logger';
|
||||
import { Express } from 'express';
|
||||
|
||||
export default async function start() {
|
||||
const { default: env } = require('../../env');
|
||||
@@ -6,11 +7,24 @@ export default async function start() {
|
||||
|
||||
await validateDBConnection();
|
||||
|
||||
const app = require('../../app').default;
|
||||
const app: Express = require('../../app').default;
|
||||
|
||||
const port = env.PORT;
|
||||
|
||||
app.listen(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.');
|
||||
})
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user