Skip to content

Conversation

tnaum-ms
Copy link
Collaborator

@tnaum-ms tnaum-ms commented Aug 5, 2025

This pull request introduces several updates focused on improving the data migration provider system and refining client extension verification for the VS Code DocumentDB extension. The changes include renaming and restructuring API configuration fields, updating command references, and adding support for announced migration providers. The most significant update is the addition of a new command handler for accessing data migration services, which enhances the user experience for selecting and interacting with migration providers.

Introduces an always visible context menu item for Data Migration....

The context menu item activates a QuickPick with a list of supported migration providers (this list can be extended):

image

Data Migration Provider Improvements

  • Added a new command handler accessDataMigrationServices in src/commands/accessDataMigrationServices/accessDataMigrationServices.ts to present users with a quick pick for installed and announced migration providers, including marketplace integration and authentication handling.
  • Updated command references in package.json from chooseDataMigrationExtension to accessDataMigrationServices for all relevant UI actions, ensuring the new handler is used throughout the extension. [1] [2] [3]
  • Added support for announced migration providers in package.json under the new x-announcedMigrationProviders field, allowing the extension to surface marketplace providers to users.

API Configuration and Client Verification Updates

  • Renamed API configuration fields in package.json and api/src/utils/getApi.ts from registeredClients to verifiedClients, and updated logic to check for verified clients when authorizing API access. [1] [2] [3]
  • Enhanced client registration flow in getDocumentDBExtensionApi by adding an internal command call to register the client extension, with error handling and logging for registration failures.

Miscellaneous

  • Bumped extension version from 0.2.0 to 0.3.0 in both api/package.json and api/package-lock.json to reflect these significant updates. [1] [2]
  • Added a new localization string for registering new client extensions in l10n/bundle.l10n.json.

@Copilot Copilot AI review requested due to automatic review settings August 5, 2025 11:19
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR finalizes the migration plugins integration by replacing the chooseDataMigrationExtension command with a new accessDataMigrationServices command and introduces an internal plugin registry for better client verification and announced provider support.

  • Command Migration: Replaces chooseDataMigrationExtension with accessDataMigrationServices throughout the extension
  • Enhanced Provider Support: Adds support for announced migration providers with marketplace integration
  • Client Registration: Introduces verified client tracking and automatic registration via internal commands

Reviewed Changes

Copilot reviewed 9 out of 10 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/services/migrationServices.ts Adds client extension registration and announced provider listing functionality
src/extension.ts Adds internal command for client registration and updates API version
src/documentdb/ClustersExtension.ts Updates command registration to use new migration services command
src/commands/chooseDataMigrationExtension/chooseDataMigrationExtension.ts Removes old command implementation
src/commands/accessDataMigrationServices/accessDataMigrationServices.ts Implements new command with marketplace integration and announced providers
package.json Updates command references, adds announced providers config, and renames client verification fields
l10n/bundle.l10n.json Adds localization string for client registration
api/src/utils/getApi.ts Updates client verification logic and adds automatic registration
api/package.json Bumps API version to 0.3.0
Files not reviewed (1)
  • api/package-lock.json: Language not supported

@tnaum-ms
Copy link
Collaborator Author

tnaum-ms commented Aug 5, 2025

It is ready for the release 🚀.

Waiting for a confirmation from the migration team.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Finalize Migration Plugins Integration and introduce a plugin registry

1 participant