summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Greiling <mike@pixelcog.com>2017-06-09 12:28:30 -0500
committerMike Greiling <mike@pixelcog.com>2017-06-09 12:28:30 -0500
commit010a83de19f3f1a992ee661c0b23449e8fd70a64 (patch)
tree42d8e38e59044c0ff448c73711961c8c340e8d06
parente9002222a0fc65e4e3328c7c536e43516986eb40 (diff)
downloadgitlab-ce-fall-back-to-gzip-when-missing-optional-deps.tar.gz
fall back to gzip when zopfli compression is unavailablefall-back-to-gzip-when-missing-optional-deps
-rw-r--r--config/webpack.config.js11
1 files changed, 10 insertions, 1 deletions
diff --git a/config/webpack.config.js b/config/webpack.config.js
index cbcf5ce996d..86b3bbaab70 100644
--- a/config/webpack.config.js
+++ b/config/webpack.config.js
@@ -18,6 +18,15 @@ var DEV_SERVER_LIVERELOAD = process.env.DEV_SERVER_LIVERELOAD !== 'false';
var WEBPACK_REPORT = process.env.WEBPACK_REPORT;
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 = {
// because sqljs requires fs.
node: {
@@ -222,7 +231,7 @@ if (IS_PRODUCTION) {
config.plugins.push(
new CompressionPlugin({
asset: '[path].gz[query]',
- algorithm: 'zopfli',
+ algorithm: ZOPFLI_AVAILABLE ? 'zopfli' : 'gzip',
})
);
}