-
Notifications
You must be signed in to change notification settings - Fork 0
/
server.ts
43 lines (38 loc) · 1.36 KB
/
server.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import App from "./src/app";
import dbConfig from "./src/config/database";
import generalConfig from "./src/config/general";
import envConfig from "./env";
import Container from "typedi";
import Logger from "./src/library/Logger";
let args:any = {};
process.argv.forEach((val, index) => {
if (index <= 1){
return;
}
let currentArg = val.split('=');
if (currentArg.length == 2){
args[currentArg[0]] = currentArg[1];
}
});
process.env = Object.assign(process.env, dbConfig, generalConfig, envConfig);
process.env.NODE_ENV = process.env.NODE_ENV || args.NODE_ENV || envConfig.env || generalConfig.env || 'development';
process.on('unhandledRejection', (err: {} | null | undefined, promise) => {
console.log('Unhandled Rejection at:', err, promise)
if (process.env.NODE_ENV === 'production'){
(Container.get("Logger") as Logger).error(""+err);
}
});
process.on('uncaughtException', (err:Error) => {
console.error('Uncaught exception', err);
if (process.env.NODE_ENV === 'production'){
(Container.get("Logger") as Logger).error(""+err);
}
});
if (process.env.NODE_ENV === 'development'){
const gulp = require('gulp');
require("./gulp_tasks/copy-templates")();
require("./gulp_tasks/copy-theme-assets")();
gulp.task('copy-js-templates')();
gulp.task('copy-theme-assets')();
}
new App(process.env);