From 3f3993c3d3da135ef32ba0abbff66d910a189bb6 Mon Sep 17 00:00:00 2001 From: Mike Greiling Date: Wed, 14 Jun 2017 15:08:02 -0500 Subject: [PATCH] dynamically set webpack publicPath when relative_url_root enabled --- app/assets/javascripts/main.js | 8 ++++++++ config/webpack.config.js | 1 - 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/main.js b/app/assets/javascripts/main.js index d27b4ec78c6..c8761e8fe63 100644 --- a/app/assets/javascripts/main.js +++ b/app/assets/javascripts/main.js @@ -164,6 +164,14 @@ import './visibility_select'; import './wikis'; import './zen_mode'; +// set url root for webpack async chunks (assumes config.output.publicPath is an absolute path) +if (gon && gon.relative_url_root) { + const basePath = gon.relative_url_root.replace(/\/$/, ''); + + // eslint-disable-next-line camelcase, no-undef + __webpack_public_path__ = basePath + __webpack_public_path__; +} + // eslint-disable-next-line global-require, import/no-commonjs if (process.env.NODE_ENV !== 'production') require('./test_utils/'); diff --git a/config/webpack.config.js b/config/webpack.config.js index 2e8c94655c1..39e665d5c14 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -244,7 +244,6 @@ if (IS_DEV_SERVER) { hot: DEV_SERVER_LIVERELOAD, inline: DEV_SERVER_LIVERELOAD }; - config.output.publicPath = '//' + DEV_SERVER_HOST + ':' + DEV_SERVER_PORT + config.output.publicPath; config.plugins.push( // watch node_modules for changes if we encounter a missing module compile error new WatchMissingNodeModulesPlugin(path.join(ROOT_PATH, 'node_modules')) -- GitLab