-
Notifications
You must be signed in to change notification settings - Fork 2
/
builder.js
29 lines (23 loc) · 821 Bytes
/
builder.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/env node
const path = require('path')
const allArgs = require('minimist')(process.argv.slice(2));
const additionalArgs = allArgs._;
if (additionalArgs[0] === 'init') {
const init = require('../init/index');
init(additionalArgs[1]);
} else {
const builderEntryDir = path.resolve(__dirname, '../gulpfile.js');
const gulpModulePath = path.dirname(require.resolve('gulp'));
const gulpBinaryFile = path.join(gulpModulePath, '/bin/gulp');
let args = ['--gulpfile', builderEntryDir];
if(additionalArgs.length) {
args = args.concat(additionalArgs);
}
if (allArgs.config) {
args = args.concat('--config', allArgs.config);
}
if (allArgs.tasks) {
args = args.concat('--tasks', '');
}
require('child_process').fork(gulpBinaryFile, args);
}