Skip to content

Commit 870bce1

Browse files
authored
fix: determine Atlas connection from connection String (#6867)
Atlas Metadata is not set on Compass Desktop environments, so instead this determines it through the connection string.
1 parent 17e4e70 commit 870bce1

File tree

3 files changed

+7
-12
lines changed

3 files changed

+7
-12
lines changed

packages/compass-connections/src/stores/connections-store-redux.ts

+1-4
Original file line numberDiff line numberDiff line change
@@ -1554,10 +1554,7 @@ const connectWithOptions = (
15541554
cloneDeep(connectionOptions),
15551555
SecretsForConnection.get(connectionInfo.id) ?? {}
15561556
),
1557-
connectionInfo: {
1558-
id: connectionInfo.id,
1559-
isAtlas: !!connectionInfo.atlasMetadata,
1560-
},
1557+
connectionId: connectionInfo.id,
15611558
defaultAppName: appName,
15621559
preferences: {
15631560
forceConnectionOptions: forceConnectionOptions ?? [],

packages/connection-form/src/hooks/use-connect-form.ts

+5-7
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ import { setAppNameParamIfMissing } from '../utils/set-app-name-if-missing';
6969
import { applyForceConnectionOptions } from '../utils/force-connection-options';
7070
import { useConnectionFormSetting } from './use-connect-form-settings';
7171
import ConnectionString from 'mongodb-connection-string-url';
72+
import { isAtlas } from 'mongodb-build-info';
7273

7374
export type ConnectionPersonalizationOptions = {
7475
name: string;
@@ -843,16 +844,13 @@ function setInitialState({
843844

844845
export function adjustConnectionOptionsBeforeConnect({
845846
connectionOptions,
846-
connectionInfo,
847+
connectionId,
847848
defaultAppName,
848849
notifyDeviceFlow,
849850
preferences,
850851
}: {
851852
connectionOptions: Readonly<ConnectionOptions>;
852-
connectionInfo: {
853-
id: string;
854-
isAtlas: boolean;
855-
};
853+
connectionId: string;
856854
defaultAppName?: string;
857855
notifyDeviceFlow?: (deviceFlowInformation: {
858856
verificationUrl: string;
@@ -871,8 +869,8 @@ export function adjustConnectionOptionsBeforeConnect({
871869
unsetFleOptionsIfEmptyAutoEncryption,
872870
setAppNameParamIfMissing({
873871
defaultAppName,
874-
connectionId: connectionInfo.id,
875-
isAtlas: connectionInfo.isAtlas,
872+
connectionId,
873+
isAtlas: isAtlas(connectionOptions.connectionString),
876874
telemetryAnonymousId: preferences.telemetryAnonymousId,
877875
}),
878876
adjustOIDCConnectionOptionsBeforeConnect({

packages/connection-info/src/connection-info.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ export interface ConnectionInfo {
136136
connectionOptions: ConnectionOptions;
137137

138138
/**
139-
* The metdata for the Atlas cluster
139+
* The metadata for the Atlas cluster. Set from Atlas control plane when using compass-web.
140140
*/
141141
atlasMetadata?: AtlasClusterMetadata;
142142
}

0 commit comments

Comments
 (0)