Skip to content

Commit a665877

Browse files
committed
Merge branch 'master' of github.com:mongodb/mongo-python-driver
2 parents 04ff07e + 875688c commit a665877

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+3375
-463
lines changed

.evergreen/config.yml

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -365,7 +365,7 @@ functions:
365365
${PREPARE_SHELL}
366366
set -o xtrace
367367
export PYTHON_BINARY=${PYTHON_BINARY}
368-
bash ${PROJECT_DIRECTORY}/.evergreen/tox.sh -m test-mockupdb
368+
bash ${PROJECT_DIRECTORY}/.evergreen/hatch.sh test:test-mockupdb
369369
370370
"run doctests":
371371
- command: shell.exec
@@ -375,18 +375,19 @@ functions:
375375
script: |
376376
${PREPARE_SHELL}
377377
set -o xtrace
378-
PYTHON_BINARY=${PYTHON_BINARY} bash ${PROJECT_DIRECTORY}/.evergreen/tox.sh -m doc-test
378+
PYTHON_BINARY=${PYTHON_BINARY} bash ${PROJECT_DIRECTORY}/.evergreen/hatch.sh doctest:test
379379
380380
"run tests":
381381
- command: shell.exec
382382
params:
383383
working_dir: "src"
384384
shell: bash
385-
include_expansions_in_env: ["AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY", "AWS_SESSION_TOKEN"]
385+
background: true
386+
include_expansions_in_env: ["AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY", "AWS_SESSION_TOKEN"]
386387
script: |
387388
${PREPARE_SHELL}
388389
if [ -n "${test_encryption}" ]; then
389-
. .evergreen/tox.sh -m setup-encryption
390+
./.evergreen/hatch.sh encryption:setup
390391
fi
391392
- command: shell.exec
392393
type: test
@@ -407,6 +408,7 @@ functions:
407408
if [ -n "${test_encryption}" ]; then
408409
# Disable xtrace (just in case it was accidentally set).
409410
set +x
411+
bash ${DRIVERS_TOOLS}/.evergreen/csfle/await-servers.sh
410412
export TEST_ENCRYPTION=1
411413
if [ -n "${test_encryption_pyopenssl}" ]; then
412414
export TEST_ENCRYPTION_PYOPENSSL=1
@@ -446,7 +448,7 @@ functions:
446448
SSL=${SSL} \
447449
TEST_DATA_LAKE=${TEST_DATA_LAKE} \
448450
MONGODB_API_VERSION=${MONGODB_API_VERSION} \
449-
bash ${PROJECT_DIRECTORY}/.evergreen/tox.sh -m test-eg
451+
bash ${PROJECT_DIRECTORY}/.evergreen/hatch.sh test:test-eg
450452
451453
"run enterprise auth tests":
452454
- command: shell.exec
@@ -462,7 +464,7 @@ functions:
462464
PYTHON_BINARY="${PYTHON_BINARY}" \
463465
TEST_ENTERPRISE_AUTH=1 \
464466
AUTH=auth \
465-
bash ${PROJECT_DIRECTORY}/.evergreen/tox.sh -m test-eg
467+
bash ${PROJECT_DIRECTORY}/.evergreen/hatch.sh test:test-eg
466468
467469
"run atlas tests":
468470
- command: shell.exec
@@ -478,7 +480,7 @@ functions:
478480
PROJECT_DIRECTORY="${PROJECT_DIRECTORY}" \
479481
PYTHON_BINARY="${PYTHON_BINARY}" \
480482
TEST_ATLAS=1 \
481-
bash ${PROJECT_DIRECTORY}/.evergreen/tox.sh -m test-eg
483+
bash ${PROJECT_DIRECTORY}/.evergreen/hatch.sh test:test-eg
482484
483485
"get aws auth secrets":
484486
- command: subprocess.exec
@@ -597,7 +599,7 @@ functions:
597599
working_dir: "src"
598600
script: |
599601
${PREPARE_SHELL}
600-
. .evergreen/tox.sh -m teardown-encryption
602+
. .evergreen/hatch.sh encryption:teardown
601603
rm -rf $DRIVERS_TOOLS || true
602604
rm -f ./secrets-export.sh || true
603605
@@ -683,7 +685,7 @@ functions:
683685
PYTHON_BINARY=${PYTHON_BINARY} \
684686
CA_FILE="$DRIVERS_TOOLS/.evergreen/ocsp/${OCSP_ALGORITHM}/ca.pem" \
685687
OCSP_TLS_SHOULD_SUCCEED="${OCSP_TLS_SHOULD_SUCCEED}" \
686-
bash ${PROJECT_DIRECTORY}/.evergreen/tox.sh -m test-eg
688+
bash ${PROJECT_DIRECTORY}/.evergreen/hatch.sh test:test-eg
687689
688690
run-valid-ocsp-server:
689691
- command: shell.exec
@@ -2128,7 +2130,7 @@ tasks:
21282130
${PREPARE_SHELL}
21292131
export PYTHON_BINARY=/opt/mongodbtoolchain/v4/bin/python3
21302132
export LIBMONGOCRYPT_URL=https://s3.amazonaws.com/${bucket_name}/libmongocrypt/debian10/master/latest/libmongocrypt.tar.gz
2131-
SUCCESS=false TEST_FLE_GCP_AUTO=1 ./.evergreen/tox.sh -m test-eg
2133+
SUCCESS=false TEST_FLE_GCP_AUTO=1 ./.evergreen/hatch.sh test:test-eg
21322134
21332135
- name: testazurekms-task
21342136
commands:

.evergreen/hatch.sh

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
#!/bin/bash
2+
set -o errexit # Exit the script with error if any of the commands fail
3+
set -x
4+
5+
. .evergreen/utils.sh
6+
7+
if [ -z "$PYTHON_BINARY" ]; then
8+
PYTHON_BINARY=$(find_python3)
9+
fi
10+
11+
if $PYTHON_BINARY -m hatch --version; then
12+
run_hatch() {
13+
$PYTHON_BINARY hatch run "$@"
14+
}
15+
else # No toolchain hatch present, set up virtualenv before installing hatch
16+
createvirtualenv "$PYTHON_BINARY" hatchenv
17+
trap "deactivate; rm -rf hatchenv" EXIT HUP
18+
python -m pip install -q hatch
19+
run_hatch() {
20+
python -m hatch run "$@"
21+
}
22+
fi
23+
24+
run_hatch "${@:1}"

.evergreen/run-azurekms-fail-test.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ PYTHON_BINARY=/opt/mongodbtoolchain/v4/bin/python3 \
77
KEY_VAULT_ENDPOINT="${AZUREKMS_KEYVAULTENDPOINT}" \
88
LIBMONGOCRYPT_URL=https://s3.amazonaws.com/mciuploads/libmongocrypt/debian10/master/latest/libmongocrypt.tar.gz \
99
SUCCESS=false TEST_FLE_AZURE_AUTO=1 \
10-
./.evergreen/tox.sh -m test-eg
10+
./.evergreen/hatch.sh test:test-eg

.evergreen/run-azurekms-test.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,6 @@ AZUREKMS_CMD="tar xf mongo-python-driver.tgz" \
1616
$DRIVERS_TOOLS/.evergreen/csfle/azurekms/run-command.sh
1717
echo "Untarring file ... end"
1818
echo "Running test ... begin"
19-
AZUREKMS_CMD="KEY_NAME=\"$AZUREKMS_KEYNAME\" KEY_VAULT_ENDPOINT=\"$AZUREKMS_KEYVAULTENDPOINT\" LIBMONGOCRYPT_URL=https://s3.amazonaws.com/mciuploads/libmongocrypt/debian10/master/latest/libmongocrypt.tar.gz SUCCESS=true TEST_FLE_AZURE_AUTO=1 ./.evergreen/tox.sh -m test-eg" \
19+
AZUREKMS_CMD="KEY_NAME=\"$AZUREKMS_KEYNAME\" KEY_VAULT_ENDPOINT=\"$AZUREKMS_KEYVAULTENDPOINT\" LIBMONGOCRYPT_URL=https://s3.amazonaws.com/mciuploads/libmongocrypt/debian10/master/latest/libmongocrypt.tar.gz SUCCESS=true TEST_FLE_AZURE_AUTO=1 ./.evergreen/hatch.sh test:test-eg" \
2020
$DRIVERS_TOOLS/.evergreen/csfle/azurekms/run-command.sh
2121
echo "Running test ... end"

.evergreen/run-gcpkms-test.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@ echo "Untarring file ... begin"
1414
GCPKMS_CMD="tar xf mongo-python-driver.tgz" $DRIVERS_TOOLS/.evergreen/csfle/gcpkms/run-command.sh
1515
echo "Untarring file ... end"
1616
echo "Running test ... begin"
17-
GCPKMS_CMD="SUCCESS=true TEST_FLE_GCP_AUTO=1 LIBMONGOCRYPT_URL=https://s3.amazonaws.com/mciuploads/libmongocrypt/debian10/master/latest/libmongocrypt.tar.gz ./.evergreen/tox.sh -m test-eg" $DRIVERS_TOOLS/.evergreen/csfle/gcpkms/run-command.sh
17+
GCPKMS_CMD="SUCCESS=true TEST_FLE_GCP_AUTO=1 LIBMONGOCRYPT_URL=https://s3.amazonaws.com/mciuploads/libmongocrypt/debian10/master/latest/libmongocrypt.tar.gz ./.evergreen/hatch.sh test:test-eg" $DRIVERS_TOOLS/.evergreen/csfle/gcpkms/run-command.sh
1818
echo "Running test ... end"

.evergreen/run-mongodb-aws-ecs-test.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,5 @@ export TEST_AUTH_AWS=1
3030
export AUTH="auth"
3131
export SET_XTRACE_ON=1
3232
cd src
33-
$PYTHON_BINARY -m pip install -q --user tox
34-
bash .evergreen/tox.sh -m test-eg
33+
$PYTHON_BINARY -m pip install -q --user hatch
34+
bash .evergreen/hatch.sh test:test-eg

.evergreen/run-mongodb-aws-test.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,4 @@ set -x
2424
export TEST_AUTH_AWS=1
2525
export AUTH="auth"
2626
export SET_XTRACE_ON=1
27-
bash ./.evergreen/tox.sh -m test-eg
27+
bash ./.evergreen/hatch.sh test:test-eg

.evergreen/run-mongodb-oidc-test.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,4 @@ fi
2929
export TEST_AUTH_OIDC=1
3030
export COVERAGE=1
3131
export AUTH="auth"
32-
bash ./.evergreen/tox.sh -m test-eg -- "${@:1}"
32+
bash ./.evergreen/hatch.sh test:test-eg -- "${@:1}"

.evergreen/run-perf-tests.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,4 @@ export OUTPUT_FILE="${PROJECT_DIRECTORY}/results.json"
1616
export PYTHON_BINARY=/opt/mongodbtoolchain/v4/bin/python3
1717
export PERF_TEST=1
1818

19-
bash ./.evergreen/tox.sh -m test-eg
19+
bash ./.evergreen/hatch.sh test:test-eg

.evergreen/run-tests.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,9 +123,9 @@ if [ -n "$TEST_ENCRYPTION" ] || [ -n "$TEST_FLE_AZURE_AUTO" ] || [ -n "$TEST_FLE
123123

124124
python -m pip install '.[encryption]'
125125

126-
# Install libmongocrypt if necessary.
126+
# Setup encryption if necessary.
127127
if [ ! -d "libmongocrypt" ]; then
128-
bash ./.evergreen/setup-libmongocrypt.sh
128+
bash ./.evergreen/setup-encryption.sh
129129
fi
130130

131131
# Use the nocrypto build to avoid dependency issues with older windows/python versions.

0 commit comments

Comments
 (0)