Harmonize Workspaces and Web IDE extensions marketplace settings
Issue: Harmonize Workspaces and Web IDE extensions mar... (#454669 - closed)
What does this MR do and why?
Harmonize Workspaces and Web IDE extensions marketplace settings
See Harmonize Workspaces and Web IDE extensions mar... (#454669 - closed) for more context. Here's a copy of the main points from that issue:
WebIde::Settings::Main should be the SSOT for determining the VSCode Extensions Marketplace settings for both the Web IDE and Workspaces. Let's update our Workspaces references to use this:
- The old Worksapces feature flag (see loc) should be replaced with the setting
vscode_extensions_gallery_metadata.enabled(returned byWebIde::Settings::Main). - The vscode URL's themselves should be replaces with the setting
vscode_extensions_gallery. We don't want to just pull from default settings (see loc) like we are today. We want to directly callSettings.get([:vscode_extensions_gallery, :vscode_extensions_gallery_metadata], user: user, vscode_extensions_marketplace_feature_flag_enabled: true).
References
Acceptance criteria
-
vscode_web_ideandweb_ide_extensions_marketplaceflags are ignored by workspaces. -
Only user preference setting is used to determine whether extensions marketplace is to be enabled or not in workspace -
Remove unused allow_extensions_marketplace_in_workspacefeature flag -
Docs are updated
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots or screen recordings
With setting enabled
With setting disabled
How to set up and validate locally
Create workspaces with and without the setting enabled, see that extensions are enabled and disabled accordingly.
Note that a new workspace must be created, the setting at creation time persists for the life of the workspace.

