summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/webpack.js
diff options
context:
space:
mode:
authorMike Greiling <mike@pixelcog.com>2017-06-28 15:15:50 -0500
committerMike Greiling <mike@pixelcog.com>2017-06-28 15:15:50 -0500
commit5b43aa955737f002be3d197c9f7b4d3374d0ad69 (patch)
treeca14bad39665cabec32ff531f56ddb27983ea3a3 /app/assets/javascripts/webpack.js
parent8bb2013279a0f9116c01374b55401f3ca0d51c24 (diff)
downloadgitlab-ce-5b43aa955737f002be3d197c9f7b4d3374d0ad69.tar.gz
move webpack publicPath setup earlier in the bootstrap processes to avoid ES module execution order issues
Diffstat (limited to 'app/assets/javascripts/webpack.js')
-rw-r--r--app/assets/javascripts/webpack.js13
1 files changed, 13 insertions, 0 deletions
diff --git a/app/assets/javascripts/webpack.js b/app/assets/javascripts/webpack.js
new file mode 100644
index 00000000000..37420dcafa0
--- /dev/null
+++ b/app/assets/javascripts/webpack.js
@@ -0,0 +1,13 @@
+/**
+ * This is the first script loaded by webpack's runtime. It is used to manually configure
+ * config.output.publicPath to account for relative_url_root settings which cannot be baked-in
+ * to our webpack bundles.
+ */
+
+if (gon && gon.relative_url_root) {
+ // this assumes config.output.publicPath is an absolute path
+ const basePath = gon.relative_url_root.replace(/\/$/, '');
+
+ // eslint-disable-next-line camelcase, no-undef
+ __webpack_public_path__ = basePath + __webpack_public_path__;
+}