UNPKG

@area17/a17-boilerplate

Version:

The official AREA 17 boilerplate

29 lines (25 loc) 1.29 kB
const path = require('path'); const spawn = require('cross-spawn'); const utils = require('../utils'); const argv = require('minimist')(process.argv.slice(2)); const createLogger = require('logging').default; const logger = createLogger('Build'); // get all the tasks needed for build let resolvedPaths = []; resolvedPaths.push(utils.attemptResolve(path.join(__dirname, '../tasks', 'clean'))); resolvedPaths.push(utils.attemptResolve(path.join(__dirname, '../tasks', 'icons'))); resolvedPaths.push(utils.attemptResolve(path.join(__dirname, '../tasks', 'images'))); resolvedPaths.push(utils.attemptResolve(path.join(__dirname, '../tasks', 'fonts'))); resolvedPaths.push(utils.attemptResolve(path.join(__dirname, '../tasks', 'styles'))); resolvedPaths.push(utils.attemptResolve(path.join(__dirname, '../tasks', 'scripts'))); resolvedPaths.push(utils.attemptResolve(path.join(__dirname, '../tasks', 'rev'))); logger.info('Starting Build'); // excute tasks in order for (let i = 0; i < resolvedPaths.length; i++) { let result = spawn.sync('node', [resolvedPaths[i]].concat([argv.production ? '--production' : '']), {stdio: 'inherit'}); if (result.status !== 0) { process.stderr.write(result.stderr); logger.error('Somthing went wrong'); process.exit(result.status); } }