Skip to content

feat: Support OAuth logins for GitLab Self-Managed and GitLab Dedicated

Description

Introduce a new Authentication configuration section including a setting for OAuth Client IDs by instance URL.

Note that this MR only prompts the user to sign-in with OAuth if an application has already been configured in their VS Code workspace/user settings.

Related Issues

How has this been tested?

  1. Checkout this branch.
  2. Open this project in VS Code.
  3. Start the extension development host from VS Code's run and debug menu.
  4. Clone a project from https://staging.gitlab.com.
  5. Open the project cloned from staging in the VS Code extension development host.
  6. Configure your user settings JSON to include the following configuration:
      "gitlab.authentication.oauthClientIds": {
        "https://staging.gitlab.com": "1c4e0476c610fbc5a5cccfde2e9ed611b732cace3a0cbdf5bc1f46a1c5925ead"
      },
  7. Use the >Authenticate to GitLab command.
  8. Use https://staging.gitlab.com as the instance URL.
  9. Observe the fact that OAuth flow is supported! 🎉
  • If src/browser or src/common has been modified, please consider interoperability with the Web IDE. See Running the Extension in WebIDE.
  • Consider an end-to-end test for significant new features that aren't covered by integration tests.

Screenshots (if appropriate)

Screen_Recording_2025-08-07_at_21.12.33

What CHANGELOG entry will this MR create?

  • fix: Bug fix fixes - a user-facing issue in production - included in changelog
  • feature: New feature - a user-facing change which adds functionality - included in changelog
  • BREAKING CHANGE: (fix or feature that would cause existing functionality to change) - should bump major version, mentioned in the changelog
  • None - other non-user-facing changes
Edited by Erran Carey

Merge request reports

Loading