File tree Expand file tree Collapse file tree 7 files changed +86
-89
lines changed
Expand file tree Collapse file tree 7 files changed +86
-89
lines changed Original file line number Diff line number Diff line change @@ -434,29 +434,23 @@ functions:
434434 rm -rf ./node_modules/@aws-sdk/credential-providers
435435
436436 " run atlas tests " :
437- - command : shell.exec
438- type : test
437+ # This creates secrets-export.sh, which is later sourced by run-tests.sh
438+ - command : subprocess.exec
439439 params :
440- silent : true
441440 working_dir : " src"
442- script : |
443- cat <<EOT > prepare_atlas_connectivity.sh
444- export ATLAS_CONNECTIVITY='${ATLAS_CONNECTIVITY}'
445- EOT
446- - command : shell .exec
441+ binary : bash
442+ args :
443+ - -c
444+ - ${DRIVERS_TOOLS}/.evergreen/secrets_handling/setup-secrets.sh drivers/atlas_connect
445+ - command : subprocess .exec
447446 type : test
448447 params :
449448 working_dir : " src"
450- script : |
451- # Disable xtrace (just in case it was accidentally set).
452- set +x
453- . ./prepare_atlas_connectivity.sh
454- rm -f ./prepare_atlas_connectivity.sh
455-
456- export PROJECT_DIRECTORY="$(pwd)"
457- export NODE_LTS_VERSION='${NODE_LTS_VERSION}'
458-
459- bash ${PROJECT_DIRECTORY}/.evergreen/run-atlas-tests.sh
449+ binary : bash
450+ env :
451+ NODE_LTS_VERSION : ${NODE_LTS_VERSION}
452+ args :
453+ - .evergreen/run-atlas-tests.sh
460454
461455 " run socks5 tests " :
462456 - command : shell.exec
Original file line number Diff line number Diff line change @@ -389,29 +389,22 @@ functions:
389389 source "${PROJECT_DIRECTORY}/.evergreen/init-node-and-npm-env.sh"
390390 rm -rf ./node_modules/@aws-sdk/credential-providers
391391 run atlas tests :
392- - command : shell.exec
393- type : test
392+ - command : subprocess.exec
394393 params :
395- silent : true
396394 working_dir : src
397- script : |
398- cat <<EOT > prepare_atlas_connectivity.sh
399- export ATLAS_CONNECTIVITY='${ATLAS_CONNECTIVITY} '
400- EOT
401- - command : shell .exec
395+ binary : bash
396+ args :
397+ - ' -c '
398+ - ${DRIVERS_TOOLS}/.evergreen/secrets_handling/setup-secrets.sh drivers/atlas_connect
399+ - command : subprocess .exec
402400 type : test
403401 params :
404402 working_dir : src
405- script : |
406- # Disable xtrace (just in case it was accidentally set).
407- set +x
408- . ./prepare_atlas_connectivity.sh
409- rm -f ./prepare_atlas_connectivity.sh
410-
411- export PROJECT_DIRECTORY="$(pwd)"
412- export NODE_LTS_VERSION='${NODE_LTS_VERSION}'
413-
414- bash ${PROJECT_DIRECTORY}/.evergreen/run-atlas-tests.sh
403+ binary : bash
404+ env :
405+ NODE_LTS_VERSION : ${NODE_LTS_VERSION}
406+ args :
407+ - .evergreen/run-atlas-tests.sh
415408 run socks5 tests :
416409 - command : shell.exec
417410 type : test
Original file line number Diff line number Diff line change 22
33set -o errexit # Exit the script with error if any of the commands fail
44
5- source " ${PROJECT_DIRECTORY} /.evergreen/init-node-and-npm-env.sh"
5+ if test -f secrets-export.sh; then
6+ source secrets-export.sh
7+ fi
68
7- set -o xtrace
9+ PROJECT_DIRECTORY=${PROJECT_DIRECTORY:- " ." }
10+ source " ${PROJECT_DIRECTORY} /.evergreen/init-node-and-npm-env.sh"
811
912node -v
1013
Original file line number Diff line number Diff line change @@ -99,3 +99,9 @@ test/lambda/env.json
9999! encryption /lib
100100! encryption /test
101101! encryption /test /types
102+
103+ # files generated by tooling in drivers-evergreen-tools
104+ secrets-export.sh
105+ mo-expansion.sh
106+ mo-expansion.yml
107+ expansions.sh
Original file line number Diff line number Diff line change 133133 "check:test" : " mocha --config test/mocha_mongodb.json test/integration" ,
134134 "check:unit" : " mocha test/unit" ,
135135 "check:ts" : " node ./node_modules/typescript/bin/tsc -v && node ./node_modules/typescript/bin/tsc --noEmit" ,
136- "check:atlas" : " mocha --config test/manual/mocharc.json test/manual/atlas_connectivity.test.js " ,
136+ "check:atlas" : " mocha --config test/manual/mocharc.json test/manual/atlas_connectivity.test.ts " ,
137137 "check:adl" : " mocha --config test/mocha_mongodb.json test/manual/atlas-data-lake-testing" ,
138138 "check:aws" : " nyc mocha --config test/mocha_mongodb.json test/integration/auth/mongodb_aws.test.ts" ,
139139 "check:oidc" : " mocha --config test/mocha_mongodb.json test/manual/mongodb_oidc.prose.test.ts" ,
Load Diff This file was deleted.
Original file line number Diff line number Diff line change 1+ import { LEGACY_HELLO_COMMAND , MongoClient } from '../mongodb' ;
2+
3+ /**
4+ * ATLAS_CONNECTIVITY env variable is JSON
5+ * Here's some typescript describing the shape:
6+ *
7+ * ```typescript
8+ * interface AtlasConnectivity {
9+ * [atlasDeployment: string]: [normalUri: string, srvUri: string]
10+ * }
11+ * ```
12+ *
13+ * It should be an object with descriptive strings about the deployment type and version (i.e. sharded_cluster_3_4)
14+ * that map to a two string tuple that are the normal URI and SRV URI, order doesn't matter, but it should be that order.
15+ */
16+
17+ describe ( 'Atlas Connectivity' , function ( ) {
18+ let client : MongoClient ;
19+
20+ afterEach ( async function ( ) {
21+ await client ?. close ( ) ;
22+ } ) ;
23+
24+ const environments = [
25+ 'ATLAS_SERVERLESS' ,
26+ 'ATLAS_SRV_SERVERLESS' ,
27+ 'ATLAS_FREE' ,
28+ 'ATLAS_SRV_FREE' ,
29+ 'ATLAS_REPL' ,
30+ 'ATLAS_SRV_REPL' ,
31+ 'ATLAS_SHRD' ,
32+ 'ATLAS_SRV_SHRD' ,
33+ 'ATLAS_TLS11' ,
34+ 'ATLAS_SRV_TLS11' ,
35+ 'ATLAS_TLS12' ,
36+ 'ATLAS_SRV_TLS12'
37+ ] ;
38+
39+ for ( const environment of environments ) {
40+ it ( `${ environment } connects successfully` , async function ( ) {
41+ this . timeout ( 40000 ) ;
42+
43+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
44+ client = new MongoClient ( process . env [ environment ] ! ) ;
45+
46+ await client . connect ( ) ;
47+ await client . db ( 'admin' ) . command ( { [ LEGACY_HELLO_COMMAND ] : 1 } ) ;
48+ await client . db ( 'test' ) . collection ( 'test' ) . findOne ( { } ) ;
49+ } ) ;
50+ }
51+ } ) ;
You can’t perform that action at this time.
0 commit comments