@vtex/api
Version:
VTEX I/O API client
33 lines (32 loc) • 1.32 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.appPath = exports.startApp = void 0;
const cluster_1 = __importDefault(require("cluster"));
const constants_1 = require("../constants");
const loaders_1 = require("./loaders");
const logger_1 = require("./logger");
const master_1 = require("./master");
const worker_1 = require("./worker");
const startApp = () => {
const serviceJSON = (0, loaders_1.getServiceJSON)();
try {
// if it is a master process then call setting up worker process
if (cluster_1.default.isMaster) {
(0, master_1.startMaster)(serviceJSON);
}
else {
// to setup server configurations and share port address for incoming requests
(0, worker_1.startWorker)(serviceJSON).listen(constants_1.HTTP_SERVER_PORT);
}
}
catch (err) {
(0, logger_1.logOnceToDevConsole)(err.stack || err.message, logger_1.LogLevel.Error);
process.exit(2);
}
};
exports.startApp = startApp;
var loaders_2 = require("./loaders");
Object.defineProperty(exports, "appPath", { enumerable: true, get: function () { return loaders_2.appPath; } });