@area17/a17-boilerplate
Version:
The official AREA 17 boilerplate
31 lines (27 loc) • 985 B
JavaScript
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', 'icons')));
resolvedPaths.push(utils.attemptResolve(path.join(__dirname, '../tasks', 'bundle')));
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('Something went wrong');
process.exit(result.status);
}
}