in cli.ts [21:65]
async function start(cmd: 'start', options: any) {
console.log(chalk.rgb(175, 188, 207)(figlet.textSync('Mongoku')) + '\n');
if (cmd !== "start") {
return program.help();
}
const pm2 = options.pm2;
const forever = options.forever;
const entryPath = path.join(__dirname, 'server.js');
if (pm2 && forever) {
console.log("Cannot launch with both PM2 and Forever. You need to chose one.");
console.log("Use 'mongoku --help' for more info");
process.exit(1);
}
if (pm2) {
// Start for pm2
child_process.exec(`pm2 start --name mongoku ${entryPath}`, (err, stdout, stderr) => {
if (err) {
console.log("Error while launching with pm2: ", err);
} else {
console.log(stdout, stderr);
console.log("[Mongoku] Launched with PM2.\nAvailable at http://localhost:3100/");
}
});
return;
}
if (forever) {
// Start for forever
child_process.exec(`forever --uid mongoku start -a ${entryPath}`, (err, stdout, stderr) => {
if (err) {
console.log("Error while launching with forever: ", err);
} else {
console.log(stdout, stderr);
console.log("[Mongoku] Launched with forever.\nAvailable at http://localhost:3100/");
}
});
return;
}
await server.start();
}