UNPKG

spinjs

Version:

[![Join the chat at https://gitter.im/sysgears/spinjs](https://badges.gitter.im/sysgears/spinjs.svg)](https://gitter.im/sysgears/spinjs?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![npm version](https://badge.fury.io/js/spi

80 lines 2.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var cluster = require("cluster"); var minilog = require("minilog"); var yargs = require("yargs"); var createBuilders_1 = require("./createBuilders"); var executor_1 = require("./executor"); minilog.enable(); var logger = minilog('spin'); try { var VERSION = require('../package.json').version; var argv = yargs .command('build', 'compiles package for usage in production') .command(['watch', 'start'], 'launches package in development mode with hot code reload') .command('exp', 'launches server for exp and exp tool') .command('test [mochapack options]', 'runs package tests') .demandCommand(1, '') .option('c', { describe: 'Specify path to config file', type: 'string' }) .option('d', { describe: 'Disable builders with names having regexp', type: 'string' }) .option('e', { describe: 'Enable builders with names having regexp', type: 'string' }) .option('n', { describe: 'Show builder names', default: false, type: 'boolean' }) .option('verbose', { alias: 'v', default: false, describe: 'Show generated config', type: 'boolean' }) .version(VERSION).argv; var cmd = argv._[0]; var config_1; if (argv.help && cmd !== 'exp') { yargs.showHelp(); } else { var cwd = process.cwd(); if (['exp', 'build', 'test', 'watch', 'start'].indexOf(cmd) >= 0) { config_1 = createBuilders_1.default({ cwd: cwd, cmd: cmd, argv: argv }); } if (cluster.isMaster) { logger.info("Version " + VERSION); if (argv.n) { logger.info('Builders:'); var builderNames = Object.keys(config_1.builders) .map(function (key) { return (config_1.builders[key].enabled ? '+' : '-') + key; }) .sort(); builderNames.forEach(function (key) { return logger.info(' ' + key); }); } } var enabledBuilders = Object.keys(config_1.builders) .filter(function (key) { return config_1.builders[key].enabled; }) .reduce(function (out, key) { out[key] = config_1.builders[key]; return out; }, {}); if (Object.keys(enabledBuilders).length === 0) { logger.warn('No enabled spinjs builders found, exiting.'); } else { executor_1.default(cmd, argv, enabledBuilders, config_1.spin); } } } catch (e) { logger.error(e); process.exit(1); } //# sourceMappingURL=cli.js.map