Commit 32656703 authored by Mike Greiling's avatar Mike Greiling

refactor zopfli fallback config

parent e0dbfacf
...@@ -18,15 +18,6 @@ var DEV_SERVER_LIVERELOAD = process.env.DEV_SERVER_LIVERELOAD !== 'false'; ...@@ -18,15 +18,6 @@ var DEV_SERVER_LIVERELOAD = process.env.DEV_SERVER_LIVERELOAD !== 'false';
var WEBPACK_REPORT = process.env.WEBPACK_REPORT; var WEBPACK_REPORT = process.env.WEBPACK_REPORT;
var NO_COMPRESSION = process.env.NO_COMPRESSION; var NO_COMPRESSION = process.env.NO_COMPRESSION;
// optional dependency `node-zopfli` is unavailable on CentOS 6
var ZOPFLI_AVAILABLE;
try {
require.resolve('node-zopfli');
ZOPFLI_AVAILABLE = true;
} catch(err) {
ZOPFLI_AVAILABLE = false;
}
var config = { var config = {
// because sqljs requires fs. // because sqljs requires fs.
node: { node: {
...@@ -233,12 +224,12 @@ if (IS_PRODUCTION) { ...@@ -233,12 +224,12 @@ if (IS_PRODUCTION) {
// zopfli requires a lot of compute time and is disabled in CI // zopfli requires a lot of compute time and is disabled in CI
if (!NO_COMPRESSION) { if (!NO_COMPRESSION) {
config.plugins.push( // gracefully fall back to gzip if `node-zopfli` is unavailable (e.g. in CentOS 6)
new CompressionPlugin({ try {
asset: '[path].gz[query]', config.plugins.push(new CompressionPlugin({ algorithm: 'zopfli' }));
algorithm: ZOPFLI_AVAILABLE ? 'zopfli' : 'gzip', } catch(err) {
}) config.plugins.push(new CompressionPlugin({ algorithm: 'gzip' }));
); }
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment