UNPKG

@area17/a17-boilerplate

Version:

The official AREA 17 boilerplate

40 lines (29 loc) 845 B
#!/usr/bin/env node 'use strict'; const _ = require('lodash'); const path = require('path'); const spawn = require('cross-spawn'); const chalk = require('chalk'); const utils = require('../utils'); const processArgv = _.toArray(process.argv); const executor = processArgv[0]; const ignoredBin = processArgv[1]; const task = processArgv[2]; const args = processArgv.slice(3); function runTask() { let relativePath = path.join(__dirname, '../tasks', task); let resolvedPath = utils.attemptResolve(relativePath); if(!resolvedPath) { throw new Error(`"${task}" is not a valid task`); } let result = spawn.sync(executor, [resolvedPath].concat(args), {stdio: 'inherit'}); if(result.signal) { } else { process.exit(result.status); } } if (task) { runTask(); } else { console.log('\nPlease pass in a task you want to run.\n'); }