UNPKG

ethstats-cli

Version:
141 lines (115 loc) 4.41 kB
"use strict"; var _package = _interopRequireDefault(require("../package.json")); var _meow = _interopRequireDefault(require("meow")); var _chalk = _interopRequireDefault(require("chalk")); var _boxen = _interopRequireDefault(require("boxen")); var _lodash = _interopRequireDefault(require("lodash")); var _inquirer = _interopRequireDefault(require("inquirer")); var _nodeCleanup = _interopRequireDefault(require("node-cleanup")); var _updateNotifier = _interopRequireDefault(require("update-notifier")); var _findProcess = _interopRequireDefault(require("find-process")); var _systeminformation = _interopRequireDefault(require("systeminformation")); var _Config = _interopRequireDefault(require("./Config.js")); var _Configurator = _interopRequireDefault(require("./Configurator.js")); var _Logger = _interopRequireDefault(require("./Logger.js")); var _Cli = _interopRequireDefault(require("./Cli.js")); var _Register = _interopRequireDefault(require("./Register.js")); var _Server = _interopRequireDefault(require("./Server.js")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } (0, _updateNotifier.default)({ pkg: _package.default }).notify(); var diContainer = { inquirer: _inquirer.default, config: _Config.default, pkg: _package.default, meow: _meow.default, chalk: _chalk.default, boxen: _boxen.default, lodash: _lodash.default, systemInfo: _systeminformation.default }; var log = new _Logger.default(_Config.default.logger); diContainer.logger = log; var cli = new _Cli.default(diContainer); diContainer.cli = cli; var configurator = new _Configurator.default(diContainer); diContainer.configurator = configurator; var server = new _Server.default(diContainer); diContainer.server = server; var register = new _Register.default(diContainer); diContainer.register = register; var initApp = function initApp() { if (_Config.default.configStore.get('firstRun') !== false) { log.echo('First run detected. Please follow instructions to register your node.'); } var isServerFromConfigFile = !cli.flags.net && _Config.default.configStore.has('server') && _Config.default.configStore.get('server').url; if (isServerFromConfigFile || cli.flags.serverUrl) { server.create(); server.socket.on('open', function () { if (_Config.default.configStore.get('firstRun') !== false) { if (cli.flags.register) { server.registerNode(cli.flags.accountEmail, cli.flags.nodeName); } else { register.askInstallationType(false); } } }); } else { log.info('Get server connections'); configurator.get({ configName: 'serverUrl' }).then(function (configValue) { if (configValue === null) { log.error('Could not get server connections', false, true); } else { diContainer.config.serverUrls = configValue; if (_Config.default.configStore.get('firstRun') === false) { server.create(); } else if (!cli.flags.net && !cli.flags.register) { register.askInstallationType(true); } else { server.create(); server.socket.on('open', function () { if (_Config.default.configStore.get('firstRun') !== false) { if (cli.flags.register) { server.registerNode(cli.flags.accountEmail, cli.flags.nodeName); } else { register.askInstallationType(false); } } }); } } }); } server.eventEmitter.on('destroy', function () { log.info('Reinitializing app...'); server.client.stop(true); server.destroy(); server = new _Server.default(diContainer); diContainer.server = server; initApp(); }); }; (0, _findProcess.default)('name', 'ethstats-cli1').then(function (list) { log.debug("Process list: ".concat(JSON.stringify(list))); var processList = []; list.forEach(function (proc) { if (proc.name === 'ethstats-cli') { processList.push(proc); } }); if (processList.length > 1) { log.error('Ethstats-CLI is already running', false, true); } else { initApp(); } }); (0, _nodeCleanup.default)(function (exitCode, signal) { if (server && server.socket) { server.logout(); server.destroy(); } log.info("Exited with code: ".concat(exitCode, ", signal: ").concat(signal)); });