Repository navigation
Crawl: Support multiple configured GitHub Enterprise instances #9003
Copy link
Copy link
Closed
Labels
GitHubEnterpriseauthenticationfeature-requestRequest for new features or functionalityRequest for new features or functionalityon-testplan
Milestone
Description
Goal
Adopt the multi-instance GitHub Enterprise authentication introduced by microsoft/vscode#338080 without requiring a multi-client redesign of this extension.
This is the Crawl phase: users can configure several Enterprise instances and select which Enterprise account this extension uses, alongside their separate GitHub.com account.
Implementation: #8996. This issue should close when that PR merges.
Scope
- Honor
github-enterprise.uris, including explicit[], normal configuration precedence, and workspace trust. Read the deprecatedgithub-enterprise.urionly when no eligible plural value is configured. - Make setup additive and cancellation-safe. Write only the plural setting, preserve existing instances, and avoid automatic settings or credential migration.
- Continue deriving authenticated API destinations from the selected session's
authorizationServer, never from list order or an unrelated remote paired with a token. - Keep one selected Enterprise account/client and one separate GitHub.com account/client. Repositories on other Enterprise instances remain unavailable until the user selects the appropriate account.
- Explain mismatched or missing account preferences in both the Pull Requests and Login views. Provide Select Account scoped to GitHub Pull Requests and the Enterprise provider; start sign-in if no Enterprise accounts exist.
- Keep guidance concise and naturally wrapping, preserve public sign-in, and avoid remote discovery/network work during view rendering.
- Refresh account-sensitive views and caches when selection changes; reordering the configured list must not switch the active account, and removing an instance must not delete saved sign-ins.
- Require VS Code
^1.141.0; Insiders users are expected to stay current.
Acceptance
- GitHub.com plus Enterprise A works while Enterprise B is configured but not selected; B has actionable guidance rather than an apparently empty successful result.
- Switching A to B updates repository availability without reloading or exposing stale A data as B data. Colliding native account IDs do not bypass issuer checks.
- Legacy-only settings, plural precedence, explicit empty lists, invalid configuration, cancellation, and trust changes behave consistently with the built-in provider.
- Public sign-in remains usable when Enterprise configuration is invalid, and both views remain responsive while unrelated discovery is pending.
- Tests cover configuration/setup, account selection and routing, switching, and view behavior; the one-selected-Enterprise-account limitation is documented.
Out of scope
Simultaneous clients for different Enterprise hosts (Walk) and multiple accounts on the same host, including GitHub.com (Run).
Implementation specification and exploratory scenarios.
Follow-ups
- Walk: Walk: Use multiple GitHub Enterprise instances concurrently #9004 - use multiple Enterprise instances concurrently.
- Run: Run: Use multiple accounts per host, including GitHub.com #9005 - use multiple accounts per host, including GitHub.com.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
GitHubEnterpriseauthenticationfeature-requestRequest for new features or functionalityRequest for new features or functionalityon-testplan
Activity