[WebIDE] Use GitLab instance as the Web IDE's extension host domain
Problem to solve
GitLab Self-Managed instances that run on air-gapped environments can't connect to the .gitlab-static.net
extension host domain therefore many capabilities in the Web IDE don't work. .gitlab-static.net
is a separate web service from GitLab instances which makes the task of providing an alternative solution very challenging for Gitlab Self-Managed instances administrators.
Solution proposal
Allow GitLab instance administrators to use the GitLab instance's static assets HTTP server as a replacement for .gitlab-static.net
when instance administrators provide a custom extension host domain in application settings.
Acceptance criteria
-
Replace hardcoded Web IDE CSP rules that point to gitlab-static.net
with the custom extension host domain application setting. -
Replace hardcoded Web IDE CORS rules that point to gitlab-static.net
with the custom extension domain application setting. -
Ensure that Workhorse delegates CORS headers resolution to the Rails Web server. -
Verify that this solution on work in an environment that uses mutual TLS.
Implementation ideas
Edited by 🤖 GitLab Bot 🤖