Skip to content

Commit b4e89cc

Browse files
Merge pull request #2081 from mongodb/merge-release/1.17-into-release/2.2-1749071220181
Merge release/1.17 into release/2.2
2 parents 00cbd29 + 684199d commit b4e89cc

File tree

3 files changed

+34
-88
lines changed

3 files changed

+34
-88
lines changed

.evergreen/config.yml

Lines changed: 27 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,11 @@ timeout:
2626
args: [ls, -la]
2727

2828
functions:
29+
assume-test-secrets-ec2-role:
30+
- command: ec2.assume_role
31+
params:
32+
role_arn: ${aws_test_secrets_role}
33+
2934
setup-system:
3035
# Executes clone and applies the submitted patch, if any
3136
- command: git.get_project
@@ -109,9 +114,13 @@ functions:
109114
display_name: test_suite.tgz
110115

111116
bootstrap-mongohoused:
117+
- command: ec2.assume_role
118+
params:
119+
role_arn: ${aws_test_secrets_role}
112120
- command: subprocess.exec
113121
params:
114122
binary: bash
123+
add_expansions_to_env: true
115124
args:
116125
- ${DRIVERS_TOOLS}/.evergreen/atlas_data_lake/pull-mongohouse-image.sh
117126
- command: subprocess.exec
@@ -376,20 +385,6 @@ functions:
376385
binary: bash
377386
args: [*task-runner, evg-test-load-balancers]
378387

379-
run-serverless-tests:
380-
- command: subprocess.exec
381-
type: test
382-
params:
383-
binary: "bash"
384-
env:
385-
SERVERLESS: "serverless"
386-
args: [*task-runner, setup-test]
387-
- command: subprocess.exec
388-
type: test
389-
params:
390-
binary: "bash"
391-
args: [*task-runner, evg-test-serverless]
392-
393388
run-atlas-data-lake-test:
394389
- command: subprocess.exec
395390
type: test
@@ -1606,14 +1601,6 @@ tasks:
16061601
- func: start-cse-servers
16071602
- func: run-retry-kms-requests
16081603

1609-
- name: "test-serverless"
1610-
tags: ["serverless"]
1611-
commands:
1612-
- func: start-cse-servers
1613-
- func: "run-serverless-tests"
1614-
vars:
1615-
MONGO_GO_DRIVER_COMPRESSOR: "snappy"
1616-
16171604
- name: "testgcpkms-task"
16181605
commands:
16191606
- command: subprocess.exec
@@ -1636,20 +1623,24 @@ tasks:
16361623

16371624
- name: "testawskms-task"
16381625
commands:
1626+
- func: assume-test-secrets-ec2-role
16391627
- command: subprocess.exec
16401628
type: test
16411629
params:
16421630
binary: "bash"
1631+
add_expansions_to_env: true
16431632
args: [*task-runner, test-awskms]
16441633

16451634
- name: "testawskms-fail-task"
16461635
# testawskms-fail-task runs without environment variables.
16471636
# It is expected to fail to obtain credentials.
16481637
commands:
1638+
- func: assume-test-secrets-ec2-role
16491639
- command: subprocess.exec
16501640
type: test
16511641
params:
16521642
binary: "bash"
1643+
add_expansions_to_env: true
16531644
env:
16541645
EXPECT_ERROR: 'status=400'
16551646
args: [*task-runner, test-awskms]
@@ -1660,16 +1651,19 @@ tasks:
16601651
type: test
16611652
params:
16621653
binary: bash
1654+
add_expansions_to_env: true
16631655
args: [*task-runner, test-azurekms]
16641656

16651657
- name: "testazurekms-fail-task"
16661658
# testazurekms-fail-task runs without environment variables.
16671659
# It is expected to fail to obtain credentials.
16681660
commands:
1661+
- func: assume-test-secrets-ec2-role
16691662
- command: subprocess.exec
16701663
type: test
16711664
params:
16721665
binary: bash
1666+
add_expansions_to_env: true
16731667
env:
16741668
EXPECT_ERROR: "1"
16751669
args: [*task-runner, test-azurekms]
@@ -1681,10 +1675,6 @@ tasks:
16811675

16821676
- name: "test-aws-lambda-deployed"
16831677
commands:
1684-
- command: ec2.assume_role
1685-
params:
1686-
role_arn: ${LAMBDA_AWS_ROLE_ARN}
1687-
duration_seconds: 3600
16881678
- command: subprocess.exec
16891679
type: test
16901680
params:
@@ -1896,49 +1886,17 @@ axes:
18961886
variables:
18971887
GO_DIST: "/opt/golang/go1.23"
18981888

1899-
- id: os-serverless
1900-
display_name: OS
1901-
values:
1902-
- id: "rhel87"
1903-
display_name: "RHEL 8.7"
1904-
run_on: rhel8.7-small
1905-
variables:
1906-
GO_DIST: "/opt/golang/go1.23"
1907-
19081889
task_groups:
1909-
- name: serverless_task_group
1910-
setup_group_can_fail_task: true
1911-
setup_group_timeout_secs: 1800 # 30 minutes
1912-
setup_group:
1913-
- func: setup-system
1914-
- command: subprocess.exec
1915-
params:
1916-
binary: "bash"
1917-
args:
1918-
- ${DRIVERS_TOOLS}/.evergreen/serverless/setup.sh
1919-
- command: expansions.update
1920-
params:
1921-
file: serverless-expansion.yml
1922-
teardown_group:
1923-
- command: subprocess.exec
1924-
params:
1925-
binary: "bash"
1926-
args:
1927-
- ${DRIVERS_TOOLS}/.evergreen/serverless/teardown.sh
1928-
- func: teardown
1929-
- func: handle-test-artifacts
1930-
1931-
tasks:
1932-
- ".serverless"
1933-
19341890
- name: testgcpkms_task_group
19351891
setup_group_can_fail_task: true
19361892
setup_group_timeout_secs: 1800 # 30 minutes
19371893
setup_group:
19381894
- func: setup-system
1895+
- func: assume-test-secrets-ec2-role
19391896
- command: subprocess.exec
19401897
params:
19411898
binary: "bash"
1899+
add_expansions_to_env: true
19421900
args:
19431901
- ${DRIVERS_TOOLS}/.evergreen/csfle/gcpkms/setup.sh
19441902
teardown_group:
@@ -1958,9 +1916,11 @@ task_groups:
19581916
setup_group_timeout_secs: 1800 # 30 minutes
19591917
setup_group:
19601918
- func: setup-system
1919+
- func: assume-test-secrets-ec2-role
19611920
- command: subprocess.exec
19621921
params:
19631922
binary: bash
1923+
add_expansions_to_env: true
19641924
env:
19651925
AZUREKMS_VMNAME_PREFIX: GODRIVER
19661926
args:
@@ -2013,9 +1973,11 @@ task_groups:
20131973
teardown_group_timeout_secs: 180 # 3 minutes (max allowed time)
20141974
setup_group:
20151975
- func: setup-system
1976+
- func: assume-test-secrets-ec2-role
20161977
- command: subprocess.exec
20171978
params:
20181979
binary: bash
1980+
add_expansions_to_env: true
20191981
env:
20201982
AZUREOIDC_VMNAME_PREFIX: "GO_DRIVER"
20211983
args:
@@ -2038,9 +2000,11 @@ task_groups:
20382000
teardown_group_timeout_secs: 180 # 3 minutes (max allowed time)
20392001
setup_group:
20402002
- func: setup-system
2003+
- func: assume-test-secrets-ec2-role
20412004
- command: subprocess.exec
20422005
params:
20432006
binary: bash
2007+
add_expansions_to_env: true
20442008
env:
20452009
AZUREOIDC_VMNAME_PREFIX: "GO_DRIVER"
20462010
args:
@@ -2063,6 +2027,7 @@ task_groups:
20632027
teardown_group_timeout_secs: 180 # 3 minutes (max allowed time)
20642028
setup_group:
20652029
- func: setup-system
2030+
- func: assume-test-secrets-ec2-role
20662031
- command: subprocess.exec
20672032
params:
20682033
binary: bash
@@ -2083,10 +2048,12 @@ task_groups:
20832048
- name: test-aws-lambda-task-group
20842049
setup_group:
20852050
- func: setup-system
2051+
- func: assume-test-secrets-ec2-role
20862052
- command: subprocess.exec
20872053
params:
20882054
working_dir: src/go.mongodb.org/mongo-driver
20892055
binary: bash
2056+
add_expansions_to_env: true
20902057
env:
20912058
LAMBDA_STACK_NAME: dbx-go-lambda
20922059
args:
@@ -2340,13 +2307,6 @@ buildvariants:
23402307
tasks:
23412308
- name: ".load-balancer"
23422309

2343-
- matrix_name: "serverless"
2344-
tags: ["pullrequest"]
2345-
matrix_spec: { os-serverless: "*" }
2346-
display_name: "Serverless ${os-serverless}"
2347-
tasks:
2348-
- "serverless_task_group"
2349-
23502310
- matrix_name: "kms-kmip-test"
23512311
matrix_spec: { version: ["7.0"], os-ssl-40: ["rhel87-64"] }
23522312
display_name: "KMS KMIP ${os-ssl-40}"

Taskfile.yml

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -165,24 +165,6 @@ tasks:
165165
evg-test-ocsp:
166166
- go test -v ./mongo -run TestOCSP ${OCSP_TLS_SHOULD_SUCCEED} >> test.suite
167167

168-
evg-test-serverless:
169-
# Serverless should be tested with all unified tests as well as tests in the following components: CRUD, load balancer,
170-
# retryable reads, retryable writes, sessions, transactions and cursor behavior.
171-
- go test ${BUILD_TAGS} ./internal/integration -run TestWriteErrorsWithLabels -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
172-
- go test ${BUILD_TAGS} ./internal/integration -run TestWriteErrorsDetails -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
173-
- go test ${BUILD_TAGS} ./internal/integration -run TestHintErrors -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
174-
- go test ${BUILD_TAGS} ./internal/integration -run TestWriteConcernError -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
175-
- go test ${BUILD_TAGS} ./internal/integration -run TestErrorsCodeNamePropagated -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
176-
- go test ${BUILD_TAGS} ./internal/integration -run TestLoadBalancerSupport -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
177-
- go test ${BUILD_TAGS} ./internal/integration -run TestRetryableReadsProse -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
178-
- go test ${BUILD_TAGS} ./internal/integration -run TestRetryableWritesProse -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
179-
- go test ${BUILD_TAGS} ./internal/integration -run TestSessionsProse -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
180-
- go test ${BUILD_TAGS} ./internal/integration -run TestConvenientTransactions -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
181-
- go test ${BUILD_TAGS} ./internal/integration -run TestCursor -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
182-
- go test ${BUILD_TAGS} ./internal/integration/unified -run TestUnifiedSpec -v -timeout {{.TEST_TIMEOUT}}s >> test.suite
183-
- go test -exec "env PKG_CONFIG_PATH=${PKG_CONFIG_PATH} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} DYLD_LIBRARY_PATH=${MACOS_LIBRARY_PATH}" ${BUILD_TAGS} -v -timeout {{.TEST_TIMEOUT}}s ./internal/integration -run TestClientSideEncryptionSpec >> test.suite
184-
- go test -exec "env PKG_CONFIG_PATH=${PKG_CONFIG_PATH} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} DYLD_LIBRARY_PATH=${MACOS_LIBRARY_PATH}" ${BUILD_TAGS} -v -timeout {{.TEST_TIMEOUT}}s ./internal/integration -run TestClientSideEncryptionProse >> test.suite
185-
186168
evg-test-versioned-api:
187169
# Versioned API related tests are in the mongo, integration and unified packages.
188170
- go test -exec "env PKG_CONFIG_PATH=${PKG_CONFIG_PATH} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} DYLD_LIBRARY_PATH=${MACOS_LIBRARY_PATH}" ${BUILD_TAGS} -v -timeout {{.TEST_TIMEOUT}}s ./mongo >> test.suite

etc/run-awskms-test.sh

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,13 @@ task build-kms-test
1010
export MONGODB_URI="$ATLAS_FREE"
1111

1212
if [ -z "${EXPECT_ERROR:-}" ]; then
13-
. ${DRIVERS_TOOLS}/.evergreen/csfle/setup-secrets.sh
14-
export AWS_SECRET_ACCESS_KEY=$FLE_AWS_SECRET_ACCESS_KEY
15-
export AWS_ACCESS_KEY_ID=$FLE_AWS_ACCESS_KEY_ID
13+
. ${DRIVERS_TOOLS}/.evergreen/csfle/setup-secrets.sh
14+
export AWS_SECRET_ACCESS_KEY=$FLE_AWS_SECRET_ACCESS_KEY
15+
export AWS_ACCESS_KEY_ID=$FLE_AWS_ACCESS_KEY_ID
1616
fi
1717

18+
# AWS_SESSION_TOKEN is required to get credentials from the drivers/csfle vault
19+
# but interferes with the testkms binary causing UnrecognizedClientException.
20+
unset AWS_SESSION_TOKEN
21+
1822
LD_LIBRARY_PATH=./install/libmongocrypt/lib64 PROVIDER='aws' ./testkms

0 commit comments

Comments
 (0)