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 by WebIde::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 call Settings.get([:vscode_extensions_gallery, :vscode_extensions_gallery_metadata], user: user, vscode_extensions_marketplace_feature_flag_enabled: true).

References

Acceptance criteria

  • vscode_web_ide and web_ide_extensions_marketplace flags 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_workspace feature 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

Screenshot_2024-10-31_at_10.33.19_AM

With setting disabled

Screenshot_2024-10-31_at_10.37.29_AM

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.

Edited by Chad Woolley

Merge request reports

Loading