xys-monitor
Version:
A project named xys-monitor
46 lines (40 loc) • 1.28 kB
JavaScript
var path = require('path')
var ora = require('ora')
var rm = require('rimraf')
var webpack = require('webpack')
var webpackConfig = require('./webpack.prod.conf')
var webpackModulesConfig = require('./webpack.modules.conf')
var webpackHashConfig = require('./webpack.prod.hash.conf');
function buildPack(webpackConfig, cb, spinnerText) {
var spinner = ora(spinnerText || 'building for uncompressed files...')
spinner.start()
webpack(webpackConfig, function (err, stats) {
spinner.stop()
if (err) {
throw err
}
process.stdout.write(stats.toString({
colors: true,
modules: false,
children: false,
chunks: false,
chunkModules: false
}) + '\n')
cb && cb()
})
}
function fullBuild(cb) {
// build index.js
buildPack(webpackConfig, function () {
cb && cb()
}, 'building for index.js')
}
function modulesBuild() {
// build ${module}/index.js
buildPack(webpackModulesConfig, function () {
buildPack(webpackHashConfig,function(){},'building for index.js hash...');
}, 'building for ${module}/index.js')
}
rm( "../*/dist*",function( str ){
fullBuild(modulesBuild)
} )