summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Zallmann <tzallmann@gitlab.com>2018-02-16 19:56:28 +0000
committerMark Fletcher <mark@gitlab.com>2018-02-19 11:14:05 +0000
commit22c3057312c5bce7b3dd9004af6a21c101ef679e (patch)
treef473ce2723dce851c7080702364554604f2c8b95
parent53f7fd450d57aa1c87a8b52b32cb9505859fd663 (diff)
downloadgitlab-ce-22c3057312c5bce7b3dd9004af6a21c101ef679e.tar.gz
Merge branch '42641-monaco-service-workers-do-not-work-with-cdn-enabled' into 'master'
Resolve "Monaco service workers do not work with CDN enabled" Closes #42641 See merge request gitlab-org/gitlab-ce!17021
-rw-r--r--app/assets/javascripts/ide/monaco_loader.js5
-rw-r--r--changelogs/unreleased/42641-monaco-service-workers-do-not-work-with-cdn-enabled.yml5
2 files changed, 10 insertions, 0 deletions
diff --git a/app/assets/javascripts/ide/monaco_loader.js b/app/assets/javascripts/ide/monaco_loader.js
index af83a1ec0b4..142a220097b 100644
--- a/app/assets/javascripts/ide/monaco_loader.js
+++ b/app/assets/javascripts/ide/monaco_loader.js
@@ -6,6 +6,11 @@ monacoContext.require.config({
},
});
+// ignore CDN config and use local assets path for service worker which cannot be cross-domain
+const relativeRootPath = (gon && gon.relative_url_root) || '';
+const monacoPath = `${relativeRootPath}/assets/webpack/monaco-editor/vs`;
+window.MonacoEnvironment = { getWorkerUrl: () => `${monacoPath}/base/worker/workerMain.js` };
+
// eslint-disable-next-line no-underscore-dangle
window.__monaco_context__ = monacoContext;
export default monacoContext.require;
diff --git a/changelogs/unreleased/42641-monaco-service-workers-do-not-work-with-cdn-enabled.yml b/changelogs/unreleased/42641-monaco-service-workers-do-not-work-with-cdn-enabled.yml
new file mode 100644
index 00000000000..955a5a27e21
--- /dev/null
+++ b/changelogs/unreleased/42641-monaco-service-workers-do-not-work-with-cdn-enabled.yml
@@ -0,0 +1,5 @@
+---
+title: Fix monaco editor features which were incompatable with GitLab CDN settings
+merge_request: 17021
+author:
+type: fixed