@@ -483,6 +483,39 @@ functions:
483
483
export TLS_FEATURE=${TLS_FEATURE}
484
484
.evergreen/run-csfle-kmip-servers.sh
485
485
486
+ " build csfle expansions " :
487
+ - command : shell.exec
488
+ params :
489
+ shell : bash
490
+ working_dir : " src"
491
+ script : |
492
+ ${PREPARE_SHELL}
493
+ set +o xtrace
494
+ cat <<EOT > csfle-expansions.yml
495
+ PREPARE_CSFLE: |
496
+ export ASYNC_RUNTIME=${ASYNC_RUNTIME}
497
+ export CSFLE_TLS_CERT_DIR=$DRIVERS_TOOLS_X509
498
+ export DISABLE_CRYPT_SHARED=${DISABLE_CRYPT_SHARED}
499
+ export TLS_FEATURE=${TLS_FEATURE}
500
+ export CRYPT_SHARED_LIB_PATH=${CRYPT_SHARED_LIB_PATH}
501
+ export PYTHON=${PYTHON}
502
+ ${PYTHON} -m pip install boto3
503
+ # Exported without xtrace to avoid leaking credentials
504
+ set +o xtrace
505
+ export AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
506
+ export AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
507
+ export AZURE_TENANT_ID=${AZURE_TENANT_ID}
508
+ export AZURE_CLIENT_ID=${AZURE_CLIENT_ID}
509
+ export AZURE_CLIENT_SECRET=${AZURE_CLIENT_SECRET}
510
+ export GCP_EMAIL=${GCP_EMAIL}
511
+ export GCP_PRIVATE_KEY=${GCP_PRIVATE_KEY}
512
+ export CSFLE_LOCAL_KEY=${CSFLE_LOCAL_KEY}
513
+ set -o xtrace
514
+ EOT
515
+ - command : expansions.update
516
+ params :
517
+ file : src/csfle-expansions.yml
518
+
486
519
" run csfle tests " :
487
520
- command : shell.exec
488
521
type : test
@@ -491,26 +524,30 @@ functions:
491
524
working_dir : " src"
492
525
script : |
493
526
${PREPARE_SHELL}
494
- export ASYNC_RUNTIME=${ASYNC_RUNTIME}
495
- export CSFLE_TLS_CERT_DIR=$DRIVERS_TOOLS_X509
496
- export CRYPT_SHARED_LIB_PATH=${CRYPT_SHARED_LIB_PATH}
497
- export DISABLE_CRYPT_SHARED=${DISABLE_CRYPT_SHARED}
498
- export TLS_FEATURE=${TLS_FEATURE}
499
- export PYTHON=${PYTHON}
500
- ${PYTHON} -m pip install boto3
527
+ ${PREPARE_CSFLE}
528
+
529
+ .evergreen/run-csfle-tests.sh
530
+
531
+ " run csfle serverless tests " :
532
+ - command : shell.exec
533
+ type : test
534
+ params :
535
+ shell : bash
536
+ working_dir : " src"
537
+ script : |
538
+ ${PREPARE_SHELL}
539
+ ${PREPARE_CSFLE}
501
540
502
541
# Exported without xtrace to avoid leaking credentials
503
542
set +o xtrace
504
- export AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
505
- export AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
506
- export AZURE_TENANT_ID=${AZURE_TENANT_ID}
507
- export AZURE_CLIENT_ID=${AZURE_CLIENT_ID}
508
- export AZURE_CLIENT_SECRET=${AZURE_CLIENT_SECRET}
509
- export GCP_EMAIL=${GCP_EMAIL}
510
- export GCP_PRIVATE_KEY=${GCP_PRIVATE_KEY}
511
- export CSFLE_LOCAL_KEY=${CSFLE_LOCAL_KEY}
543
+ export SERVERLESS_ATLAS_USER="${SERVERLESS_ATLAS_USER}"
544
+ export SERVERLESS_ATLAS_PASSWORD="${SERVERLESS_ATLAS_PASSWORD}"
512
545
set -o xtrace
513
546
547
+ export SINGLE_MONGOS_LB_URI="${SERVERLESS_URI}"
548
+ . .evergreen/generate-uri.sh
549
+ export SERVERLESS=serverless
550
+
514
551
.evergreen/run-csfle-tests.sh
515
552
516
553
run-valid-ocsp-server :
@@ -699,6 +736,7 @@ functions:
699
736
params :
700
737
script : |
701
738
${PREPARE_SHELL}
739
+ set +o xtrace
702
740
for filename in $(find ${DRIVERS_TOOLS} -name \*.json); do
703
741
perl -p -i -e "s|ABSOLUTE_PATH_REPLACEMENT_TOKEN|${DRIVERS_TOOLS}|g" $filename
704
742
done
@@ -708,6 +746,7 @@ functions:
708
746
params :
709
747
script : |
710
748
${PREPARE_SHELL}
749
+ set +o xtrace
711
750
for i in $(find ${DRIVERS_TOOLS}/.evergreen ${PROJECT_DIRECTORY}/.evergreen -name \*.sh); do
712
751
cat $i | tr -d '\r' > $i.new
713
752
mv $i.new $i
@@ -723,6 +762,7 @@ functions:
723
762
params :
724
763
script : |
725
764
${PREPARE_SHELL}
765
+ set +o xtrace
726
766
for i in $(find ${DRIVERS_TOOLS}/.evergreen ${PROJECT_DIRECTORY}/.evergreen -name \*.sh); do
727
767
chmod +x $i
728
768
done
@@ -1171,8 +1211,24 @@ tasks:
1171
1211
- func : " install junit dependencies"
1172
1212
- func : " bootstrap mongo-orchestration"
1173
1213
- func : " run kmip server"
1214
+ - func : " build csfle expansions"
1174
1215
- func : " run csfle tests"
1175
1216
1217
+ - name : " test-csfle-serverless"
1218
+ tags : ["csfle", "serverless"]
1219
+ commands :
1220
+ - command : expansions.update
1221
+ params :
1222
+ file : src/expansion.yml
1223
+ - command : expansions.update
1224
+ params :
1225
+ file : serverless-expansion.yml
1226
+ - func : " install junit dependencies"
1227
+ - func : " install libmongocrypt"
1228
+ - func : " run kmip server"
1229
+ - func : " build csfle expansions"
1230
+ - func : " run csfle serverless tests"
1231
+
1176
1232
- name : " test-atlas-connectivity"
1177
1233
tags : ["atlas-connect"]
1178
1234
commands :
@@ -1878,7 +1934,12 @@ buildvariants:
1878
1934
os :
1879
1935
- ubuntu-18.04
1880
1936
async-runtime : " *"
1881
- display_name : " Serverless ${os} with ${async-runtime}"
1937
+ crypt-shared :
1938
+ - " enabled"
1939
+ tls-feature :
1940
+ - " default"
1941
+ - " openssl"
1942
+ display_name : " Serverless ${os} with ${async-runtime} ${tls-feature}"
1882
1943
tasks :
1883
1944
- " serverless_task_group"
1884
1945
0 commit comments