feat: server build

This commit is contained in:
cha0s 2019-04-30 18:22:19 -05:00
parent 695520b0ed
commit d77eff36e3
2 changed files with 12 additions and 7 deletions

View File

@ -19,7 +19,8 @@
},
"scripts": {
"client": "webpack-dev-server --hot --config webpack.client.config.js",
"server": "DEBUG=avocado:* webpack --watch --hot --config webpack.server.config.js",
"server": "DEBUG=avocado:* webpack --autorun --watch --hot --config webpack.server.config.js",
"server:build": "webpack --config webpack.server.config.js",
"start": "webpack --config webpack.server.config.js && webpack-dev-server --config webpack.client.config.js"
},
"dependencies": {

View File

@ -9,7 +9,6 @@ const config = require('./webpack.common.config');
config.devtool = 'inline-source-map';
config.entry = {
server: [
'webpack/hot/signal',
'source-map-support/register',
'@babel/polyfill',
path.join(__dirname, 'register-packets.js'),
@ -17,6 +16,9 @@ config.entry = {
path.join(__dirname, 'server', 'index.js'),
],
};
if (process.argv.find((arg) => '--hot' === arg)) {
config.entry.server.unshift('webpack/hot/signal');
}
config.externals = [
nodeExternals({
whitelist: /(?:@avocado|webpack\/hot\/signal)/,
@ -32,11 +34,13 @@ const nodeArgs = [];
if (process.argv.find((arg) => '--prof' === arg)) {
nodeArgs.push('--prof');
}
config.plugins.push(new StartServerPlugin({
name: 'server.js',
nodeArgs: nodeArgs,
signal: true,
}));
if (process.argv.find((arg) => '--autorun' === arg)) {
config.plugins.push(new StartServerPlugin({
name: 'server.js',
nodeArgs: nodeArgs,
signal: true,
}));
}
config.plugins.push(new webpack.DefinePlugin({
AVOCADO_CLIENT: false,
AVOCADO_SERVER: true,