clean webpack cache on full build

add option to clena assets
This commit is contained in:
HF 2023-12-12 18:58:53 +01:00
parent 997d887cfd
commit 872c3a5659
2 changed files with 12 additions and 6 deletions

View File

@ -3,6 +3,8 @@
* Lets split that here * Lets split that here
*/ */
const path = require('path');
const fs = require('fs');
const webpack = require('webpack'); const webpack = require('webpack');
const serverConfig = require('../webpack.config.server.js'); const serverConfig = require('../webpack.config.server.js');
const clientConfig = require('../webpack.config.client.js'); const clientConfig = require('../webpack.config.client.js');
@ -22,6 +24,9 @@ function compile(webpackConfig) {
} }
async function buildProduction() { async function buildProduction() {
// cleanup old files
fs.rmSync(path.resolve(__dirname, '..', 'node_modules', '.cache', 'webpack'), { recursive: true, force: true });
// fs.rmSync(path.resolve(__dirname, '..', 'dist', 'public', 'assets'), { recursive: true, force: true });
// server files // server files
console.log('-----------------------------'); console.log('-----------------------------');
console.log(`Build server...`); console.log(`Build server...`);
@ -43,6 +48,7 @@ async function buildProduction() {
analyze: false, analyze: false,
extract: false, extract: false,
locale: lang, locale: lang,
clean: (i === 0),
})); }));
} }
console.log(`Finished building in ${(Date.now() - st) / 1000}s`); console.log(`Finished building in ${(Date.now() - st) / 1000}s`);

View File

@ -18,6 +18,7 @@ function buildWebpackClientConfig(
analyze, analyze,
locale, locale,
extract, extract,
clean,
) { ) {
const ttag = { const ttag = {
resolve: { resolve: {
@ -61,7 +62,7 @@ function buildWebpackClientConfig(
? '[name].[chunkhash:8].js' ? '[name].[chunkhash:8].js'
: `[name].${locale}.[chunkhash:8].js`, : `[name].${locale}.[chunkhash:8].js`,
chunkFilename: `[name].${locale}.[chunkhash:8].js`, chunkFilename: `[name].${locale}.[chunkhash:8].js`,
clean: true, clean,
}, },
resolve: { resolve: {
@ -174,8 +175,7 @@ function buildWebpackClientConfig(
chunkModules: false, chunkModules: false,
}, },
cache: (extract) ? false cache: {
: {
type: 'filesystem', type: 'filesystem',
}, },
}; };
@ -217,11 +217,11 @@ function buildWebpackClientConfigAllLangs() {
* @return webpack configuration * @return webpack configuration
*/ */
module.exports = ({ module.exports = ({
development, analyze, extract, locale, development, analyze, extract, locale, clean,
}) => { }) => {
if (extract || analyze || locale || development) { if (extract || analyze || locale || development || clean) {
return buildWebpackClientConfig( return buildWebpackClientConfig(
development, analyze, locale || 'en', extract, development, analyze, locale || 'en', extract, clean,
); );
} }
return buildWebpackClientConfigAllLangs(development); return buildWebpackClientConfigAllLangs(development);