diff --git a/packages/cli/src/commands/extensions/install.test.ts b/packages/cli/src/commands/extensions/install.test.ts index 722ffd49d5..e44cf2375c 100644 --- a/packages/cli/src/commands/extensions/install.test.ts +++ b/packages/cli/src/commands/extensions/install.test.ts @@ -99,6 +99,18 @@ describe('handleInstall', () => { expect(processSpy).toHaveBeenCalledWith(1); }); + it('should install an extension from a sso source', async () => { + mockInstallExtension.mockResolvedValue('sso-extension'); + + await handleInstall({ + source: 'sso://google.com', + }); + + expect(consoleLogSpy).toHaveBeenCalledWith( + 'Extension "sso-extension" installed successfully and enabled.', + ); + }); + it('should install an extension from a local path', async () => { mockInstallExtension.mockResolvedValue('local-extension'); diff --git a/packages/cli/src/commands/extensions/install.ts b/packages/cli/src/commands/extensions/install.ts index 53ed0ffd31..aae1897974 100644 --- a/packages/cli/src/commands/extensions/install.ts +++ b/packages/cli/src/commands/extensions/install.ts @@ -27,7 +27,8 @@ export async function handleInstall(args: InstallArgs) { if ( source.startsWith('http://') || source.startsWith('https://') || - source.startsWith('git@') + source.startsWith('git@') || + source.startsWith('sso://') ) { installMetadata = { source,