UNPKG

@area17/a17-boilerplate

Version:

The official AREA 17 boilerplate

39 lines (33 loc) 1.2 kB
const path = require('path'); const spawn = require('cross-spawn'); const chalk = require('chalk'); const utils = require('../utils'); const createLogger = require('logging').default; const relativePath = __dirname.replace(process.cwd(), '.'); const argv = require('minimist')(process.argv.slice(2)); const logger = createLogger('Scripts'); // use webpack to handle script task if (argv.watch) { logger.info('Starting Scripts in watch mode'); const ls = spawn( utils.resolveBin('webpack'), [].concat(['--config'],[path.join(relativePath, '../webpack.config.js')],['--env.dev'],[argv.watch ? '--watch' : '']) ); ls.stdout.on('data', (data) => { logger.info(`${data}`); }); } else { logger.info('Starting Scripts'); let result = spawn.sync( utils.resolveBin('webpack'), [].concat(['--config'],[path.join(relativePath, '../webpack.config.js')],[argv.production ? '--env.prod' : '--env.dev']) ); if (result.status !== 0) { // process.stderr.write(result.stderr); process.stdout.write(chalk.red(result.stdout)); logger.error('Failed Scripts'); // process.exit(result.status); } else { logger.info(chalk.green('Succeed Scripts')); } }