From 3934465ef4dbc37d8f3942d8ffba5905ed0d509a Mon Sep 17 00:00:00 2001 From: Bailey Pearson Date: Tue, 10 Oct 2023 11:05:52 -0600 Subject: [PATCH] ci(NODE-5654): remove vars from evergreen config (#3881) --- .evergreen/config.in.yml | 15 +- .evergreen/config.yml | 1895 ++++++++++++++---------- .evergreen/generate_evergreen_tasks.js | 371 ++--- 3 files changed, 1304 insertions(+), 977 deletions(-) diff --git a/.evergreen/config.in.yml b/.evergreen/config.in.yml index c973a9d38c..10cc0882a8 100644 --- a/.evergreen/config.in.yml +++ b/.evergreen/config.in.yml @@ -1045,15 +1045,16 @@ tasks: - performance exec_timeout_secs: 3600 commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '18' } + - {key: NPM_VERSION, value: '9'} + - {key: VERSION, value: rapid } + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NODE_LTS_VERSION: 18 - NPM_VERSION: 9 - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - TOPOLOGY: server - AUTH: noauth - func: run spec driver benchmarks - command: perf.send params: diff --git a/.evergreen/config.yml b/.evergreen/config.yml index 4de1b29441..b5485c9734 100644 --- a/.evergreen/config.yml +++ b/.evergreen/config.yml @@ -983,15 +983,16 @@ tasks: - performance exec_timeout_secs: 3600 commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '18'} + - {key: NPM_VERSION, value: '9'} + - {key: VERSION, value: rapid} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NODE_LTS_VERSION: 18 - NPM_VERSION: 9 - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - TOPOLOGY: server - AUTH: noauth - func: run spec driver benchmarks - command: perf.send params: @@ -1001,12 +1002,15 @@ tasks: - latest - server commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: server - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-latest-replica_set @@ -1014,12 +1018,15 @@ tasks: - latest - replica_set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: replica_set - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-latest-sharded_cluster @@ -1027,12 +1034,15 @@ tasks: - latest - sharded_cluster commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: sharded_cluster - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-rapid-server @@ -1040,12 +1050,15 @@ tasks: - rapid - server commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: rapid} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - TOPOLOGY: server - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-rapid-replica_set @@ -1053,12 +1066,15 @@ tasks: - rapid - replica_set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: rapid} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - TOPOLOGY: replica_set - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-rapid-sharded_cluster @@ -1066,12 +1082,15 @@ tasks: - rapid - sharded_cluster commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: rapid} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - TOPOLOGY: sharded_cluster - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-7.0-server @@ -1079,12 +1098,15 @@ tasks: - '7.0' - server commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '7.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '7.0' - TOPOLOGY: server - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-7.0-replica_set @@ -1092,12 +1114,15 @@ tasks: - '7.0' - replica_set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '7.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '7.0' - TOPOLOGY: replica_set - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-7.0-sharded_cluster @@ -1105,12 +1130,15 @@ tasks: - '7.0' - sharded_cluster commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '7.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '7.0' - TOPOLOGY: sharded_cluster - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-6.0-server @@ -1118,12 +1146,15 @@ tasks: - '6.0' - server commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - TOPOLOGY: server - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-6.0-replica_set @@ -1131,12 +1162,15 @@ tasks: - '6.0' - replica_set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - TOPOLOGY: replica_set - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-6.0-sharded_cluster @@ -1144,12 +1178,15 @@ tasks: - '6.0' - sharded_cluster commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - TOPOLOGY: sharded_cluster - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-5.0-server @@ -1157,12 +1194,15 @@ tasks: - '5.0' - server commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: server - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-5.0-replica_set @@ -1170,12 +1210,15 @@ tasks: - '5.0' - replica_set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: replica_set - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-5.0-sharded_cluster @@ -1183,12 +1226,15 @@ tasks: - '5.0' - sharded_cluster commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: sharded_cluster - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-4.4-server @@ -1196,12 +1242,15 @@ tasks: - '4.4' - server commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - TOPOLOGY: server - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-4.4-replica_set @@ -1209,12 +1258,15 @@ tasks: - '4.4' - replica_set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - TOPOLOGY: replica_set - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-4.4-sharded_cluster @@ -1222,12 +1274,15 @@ tasks: - '4.4' - sharded_cluster commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - TOPOLOGY: sharded_cluster - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-4.2-server @@ -1235,12 +1290,15 @@ tasks: - '4.2' - server commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.2'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.2' - TOPOLOGY: server - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-4.2-replica_set @@ -1248,12 +1306,15 @@ tasks: - '4.2' - replica_set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.2'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.2' - TOPOLOGY: replica_set - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-4.2-sharded_cluster @@ -1261,12 +1322,15 @@ tasks: - '4.2' - sharded_cluster commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.2'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.2' - TOPOLOGY: sharded_cluster - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-4.0-server @@ -1274,12 +1338,15 @@ tasks: - '4.0' - server commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.0' - TOPOLOGY: server - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-4.0-replica_set @@ -1287,12 +1354,15 @@ tasks: - '4.0' - replica_set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.0' - TOPOLOGY: replica_set - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-4.0-sharded_cluster @@ -1300,12 +1370,15 @@ tasks: - '4.0' - sharded_cluster commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.0' - TOPOLOGY: sharded_cluster - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-3.6-server @@ -1313,12 +1386,15 @@ tasks: - '3.6' - server commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '3.6'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '3.6' - TOPOLOGY: server - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-3.6-replica_set @@ -1326,12 +1402,15 @@ tasks: - '3.6' - replica_set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '3.6'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '3.6' - TOPOLOGY: replica_set - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-3.6-sharded_cluster @@ -1339,12 +1418,15 @@ tasks: - '3.6' - sharded_cluster commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '3.6'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '3.6' - TOPOLOGY: sharded_cluster - AUTH: auth - func: bootstrap kms servers - func: run tests - name: test-latest-server-v1-api @@ -1353,17 +1435,19 @@ tasks: - server - v1-api commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: server} + - {key: REQUIRE_API_VERSION, value: '1'} + - {key: AUTH, value: auth} + - {key: MONGODB_API_VERSION, value: '1'} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: server - REQUIRE_API_VERSION: '1' - AUTH: auth - func: bootstrap kms servers - func: run tests - vars: - MONGODB_API_VERSION: '1' - name: test-atlas-connectivity tags: - atlas-connect @@ -1381,13 +1465,16 @@ tasks: - sharded_cluster - load_balancer commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} + - {key: LOAD_BALANCER, value: 'true'} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: sharded_cluster - AUTH: auth - LOAD_BALANCER: 'true' - func: start-load-balancer - func: run-lb-tests - func: stop-load-balancer @@ -1397,13 +1484,16 @@ tasks: - sharded_cluster - load_balancer commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} + - {key: LOAD_BALANCER, value: 'true'} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - TOPOLOGY: sharded_cluster - AUTH: auth - LOAD_BALANCER: 'true' - func: start-load-balancer - func: run-lb-tests - func: stop-load-balancer @@ -1413,13 +1503,16 @@ tasks: - sharded_cluster - load_balancer commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} + - {key: LOAD_BALANCER, value: 'true'} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: sharded_cluster - AUTH: auth - LOAD_BALANCER: 'true' - func: start-load-balancer - func: run-lb-tests - func: stop-load-balancer @@ -1440,935 +1533,1120 @@ tasks: - name: test-socks5 tags: [] commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: replica_set} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: replica_set - func: bootstrap kms servers - func: run socks5 tests - name: test-socks5-tls tags: [] commands: + - command: expansions.update + type: setup + params: + updates: + - {key: SSL, value: ssl} + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: replica_set} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - SSL: ssl - VERSION: latest - TOPOLOGY: replica_set - func: run socks5 tests - vars: - SSL: ssl - name: test-zstd-compression tags: - latest - zstd commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} + - {key: COMPRESSOR, value: zstd} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: replica_set - AUTH: auth - COMPRESSOR: zstd - func: run-compression-tests - name: test-snappy-compression tags: - latest - snappy commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} + - {key: COMPRESSOR, value: snappy} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: replica_set - AUTH: auth - COMPRESSOR: snappy - func: run-compression-tests - name: test-tls-support-latest tags: - tls-support commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: SSL, value: ssl} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - SSL: ssl - TOPOLOGY: server - func: run tls tests - name: test-tls-support-6.0 tags: - tls-support commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: SSL, value: ssl} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - SSL: ssl - TOPOLOGY: server - func: run tls tests - name: test-tls-support-5.0 tags: - tls-support commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: SSL, value: ssl} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - SSL: ssl - TOPOLOGY: server - func: run tls tests - name: test-tls-support-4.4 tags: - tls-support commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: SSL, value: ssl} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - SSL: ssl - TOPOLOGY: server - func: run tls tests - name: test-tls-support-4.2 tags: - tls-support commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.2'} + - {key: SSL, value: ssl} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.2' - SSL: ssl - TOPOLOGY: server - func: run tls tests - name: aws-latest-auth-test-run-aws-auth-test-with-regular-aws-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with regular aws credentials - name: aws-latest-auth-test-run-aws-auth-test-with-assume-role-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with assume role credentials - name: aws-latest-auth-test-run-aws-auth-test-with-aws-EC2-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws EC2 credentials - name: aws-latest-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials as environment variables - name: aws-latest-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials and session token as environment variables - name: aws-latest-auth-test-run-aws-ECS-auth-test commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws ECS auth test - name: aws-latest-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-unset commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME unset - name: aws-latest-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME set - name: aws-latest-auth-test-run-aws-auth-test-with-regular-aws-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with regular aws credentials - name: aws-latest-auth-test-run-aws-auth-test-with-assume-role-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with assume role credentials - name: aws-latest-auth-test-run-aws-auth-test-with-aws-EC2-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws EC2 credentials - name: aws-latest-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials as environment variables - name: aws-latest-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials and session token as environment variables - name: aws-latest-auth-test-run-aws-ECS-auth-test-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws ECS auth test - name: aws-latest-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-unset-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME unset - name: aws-latest-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-set-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: latest} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: latest - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME set - name: aws-6.0-auth-test-run-aws-auth-test-with-regular-aws-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with regular aws credentials - name: aws-6.0-auth-test-run-aws-auth-test-with-assume-role-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with assume role credentials - name: aws-6.0-auth-test-run-aws-auth-test-with-aws-EC2-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws EC2 credentials - name: aws-6.0-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials as environment variables - name: aws-6.0-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials and session token as environment variables - name: aws-6.0-auth-test-run-aws-ECS-auth-test commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws ECS auth test - name: aws-6.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-unset commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME unset - name: aws-6.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME set - name: aws-6.0-auth-test-run-aws-auth-test-with-regular-aws-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with regular aws credentials - name: aws-6.0-auth-test-run-aws-auth-test-with-assume-role-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with assume role credentials - name: aws-6.0-auth-test-run-aws-auth-test-with-aws-EC2-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws EC2 credentials - name: aws-6.0-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials as environment variables - name: aws-6.0-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials and session token as environment variables - name: aws-6.0-auth-test-run-aws-ECS-auth-test-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws ECS auth test - name: aws-6.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-unset-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME unset - name: aws-6.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-set-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '6.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME set - name: aws-5.0-auth-test-run-aws-auth-test-with-regular-aws-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with regular aws credentials - name: aws-5.0-auth-test-run-aws-auth-test-with-assume-role-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with assume role credentials - name: aws-5.0-auth-test-run-aws-auth-test-with-aws-EC2-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws EC2 credentials - name: aws-5.0-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials as environment variables - name: aws-5.0-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials and session token as environment variables - name: aws-5.0-auth-test-run-aws-ECS-auth-test commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws ECS auth test - name: aws-5.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-unset commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME unset - name: aws-5.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME set - name: aws-5.0-auth-test-run-aws-auth-test-with-regular-aws-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with regular aws credentials - name: aws-5.0-auth-test-run-aws-auth-test-with-assume-role-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with assume role credentials - name: aws-5.0-auth-test-run-aws-auth-test-with-aws-EC2-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws EC2 credentials - name: aws-5.0-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials as environment variables - name: aws-5.0-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials and session token as environment variables - name: aws-5.0-auth-test-run-aws-ECS-auth-test-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws ECS auth test - name: aws-5.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-unset-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME unset - name: aws-5.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-set-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '5.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME set - name: aws-4.4-auth-test-run-aws-auth-test-with-regular-aws-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with regular aws credentials - name: aws-4.4-auth-test-run-aws-auth-test-with-assume-role-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with assume role credentials - name: aws-4.4-auth-test-run-aws-auth-test-with-aws-EC2-credentials commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws EC2 credentials - name: aws-4.4-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials as environment variables - name: aws-4.4-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials and session token as environment variables - name: aws-4.4-auth-test-run-aws-ECS-auth-test commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws ECS auth test - name: aws-4.4-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-unset commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME unset - name: aws-4.4-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-set commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME set - name: aws-4.4-auth-test-run-aws-auth-test-with-regular-aws-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with regular aws credentials - name: aws-4.4-auth-test-run-aws-auth-test-with-assume-role-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with assume role credentials - name: aws-4.4-auth-test-run-aws-auth-test-with-aws-EC2-credentials-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws EC2 credentials - name: aws-4.4-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials as environment variables - name: aws-4.4-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test with aws credentials and session token as environment variables - name: aws-4.4-auth-test-run-aws-ECS-auth-test-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws ECS auth test - name: aws-4.4-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-unset-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME unset - name: aws-4.4-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-set-no-optional commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_OPTIONS, value: '--no-optional'} + - {key: VERSION, value: '4.4'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - vars: - NPM_OPTIONS: '--no-optional' - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run aws auth test AssumeRoleWithWebIdentity with AWS_ROLE_SESSION_NAME set @@ -2376,61 +2654,75 @@ tasks: tags: - run-unit-tests commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '12'} + - {key: NPM_VERSION, value: '8'} - func: install dependencies - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - func: run unit tests - name: run-lint-checks tags: - run-lint-checks commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '12'} + - {key: NPM_VERSION, value: '8'} - func: install dependencies - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - func: run lint checks - name: check-types-typescript-next tags: - check-types-typescript-next commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '20'} + - {key: TS_VERSION, value: next} - func: install dependencies - vars: - NODE_LTS_VERSION: 20 - func: check types - vars: - TS_VERSION: next - name: compile-driver-typescript-current tags: - compile-driver-typescript-current commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '12'} + - {key: NPM_VERSION, value: '8'} + - {key: TS_VERSION, value: current} - func: install dependencies - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - func: compile driver - vars: - TS_VERSION: current - name: check-types-typescript-current tags: - check-types-typescript-current commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '20'} + - {key: TS_VERSION, value: current} - func: install dependencies - vars: - NODE_LTS_VERSION: 20 - func: check types - vars: - TS_VERSION: current - name: check-types-typescript-4.1.6 tags: - check-types-typescript-4.1.6 commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '20'} + - {key: TS_VERSION, value: 4.1.6} - func: install dependencies - vars: - NODE_LTS_VERSION: 20 - func: check types - vars: - TS_VERSION: 4.1.6 - name: download-and-merge-coverage tags: [] commands: @@ -2444,115 +2736,118 @@ tasks: tags: - run-custom-dependency-tests commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '12'} + - {key: NPM_VERSION, value: '8'} + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: server - AUTH: auth - - name: run-custom-snappy-tests - func: run custom snappy tests + - func: run custom snappy tests - name: run-bson-ext-integration tags: - run-custom-dependency-tests commands: + - command: expansions.update + type: setup + params: + updates: + - {key: TEST_NPM_SCRIPT, value: check:test} + - {key: NODE_LTS_VERSION, value: '12'} + - {key: NPM_VERSION, value: '8'} + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: server - AUTH: auth - - name: run-bson-ext-integration - func: run bson-ext test - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - TEST_NPM_SCRIPT: check:test + - func: run bson-ext test - name: run-bson-ext-unit tags: - run-custom-dependency-tests commands: + - command: expansions.update + type: setup + params: + updates: + - {key: TEST_NPM_SCRIPT, value: check:unit} + - {key: NODE_LTS_VERSION, value: '12'} + - {key: NPM_VERSION, value: '8'} + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} - func: install dependencies - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: server - AUTH: auth - - name: run-bson-ext-unit - func: run bson-ext test - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - TEST_NPM_SCRIPT: check:unit + - func: run bson-ext test - name: run-custom-csfle-tests-5.0-pinned-commit tags: - run-custom-dependency-tests commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '12'} + - {key: NPM_VERSION, value: '8'} + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: CSFLE_GIT_REF, value: 5e922eb1302f1efbf4e8ddeb5f2ef113fd58ced0} - func: install dependencies - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: replica_set - func: bootstrap kms servers - func: run custom csfle tests - vars: - CSFLE_GIT_REF: 5e922eb1302f1efbf4e8ddeb5f2ef113fd58ced0 - name: run-custom-csfle-tests-rapid-pinned-commit tags: - run-custom-dependency-tests commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '12'} + - {key: NPM_VERSION, value: '8'} + - {key: VERSION, value: rapid} + - {key: TOPOLOGY, value: replica_set} + - {key: CSFLE_GIT_REF, value: 5e922eb1302f1efbf4e8ddeb5f2ef113fd58ced0} - func: install dependencies - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - TOPOLOGY: replica_set - func: bootstrap kms servers - func: run custom csfle tests - vars: - CSFLE_GIT_REF: 5e922eb1302f1efbf4e8ddeb5f2ef113fd58ced0 - name: run-custom-csfle-tests-latest-pinned-commit tags: - run-custom-dependency-tests commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NODE_LTS_VERSION, value: '12'} + - {key: NPM_VERSION, value: '8'} + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: replica_set} + - {key: CSFLE_GIT_REF, value: 5e922eb1302f1efbf4e8ddeb5f2ef113fd58ced0} - func: install dependencies - vars: - NODE_LTS_VERSION: 12 - NPM_VERSION: 8 - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: replica_set - func: bootstrap kms servers - func: run custom csfle tests - vars: - CSFLE_GIT_REF: 5e922eb1302f1efbf4e8ddeb5f2ef113fd58ced0 - name: test-latest-server-noauth tags: - latest - server - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: server - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-latest-replica_set-noauth @@ -2561,12 +2856,15 @@ tasks: - replica_set - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: replica_set - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-latest-sharded_cluster-noauth @@ -2575,12 +2873,15 @@ tasks: - sharded_cluster - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: latest - TOPOLOGY: sharded_cluster - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-rapid-server-noauth @@ -2589,12 +2890,15 @@ tasks: - server - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: rapid} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - TOPOLOGY: server - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-rapid-replica_set-noauth @@ -2603,12 +2907,15 @@ tasks: - replica_set - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: rapid} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - TOPOLOGY: replica_set - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-rapid-sharded_cluster-noauth @@ -2617,12 +2924,15 @@ tasks: - sharded_cluster - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: rapid} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - TOPOLOGY: sharded_cluster - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-7.0-server-noauth @@ -2631,12 +2941,15 @@ tasks: - server - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '7.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '7.0' - TOPOLOGY: server - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-7.0-replica_set-noauth @@ -2645,12 +2958,15 @@ tasks: - replica_set - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '7.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '7.0' - TOPOLOGY: replica_set - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-7.0-sharded_cluster-noauth @@ -2659,12 +2975,15 @@ tasks: - sharded_cluster - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '7.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '7.0' - TOPOLOGY: sharded_cluster - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-6.0-server-noauth @@ -2673,12 +2992,15 @@ tasks: - server - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - TOPOLOGY: server - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-6.0-replica_set-noauth @@ -2687,12 +3009,15 @@ tasks: - replica_set - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - TOPOLOGY: replica_set - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-6.0-sharded_cluster-noauth @@ -2701,12 +3026,15 @@ tasks: - sharded_cluster - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '6.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '6.0' - TOPOLOGY: sharded_cluster - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-5.0-server-noauth @@ -2715,12 +3043,15 @@ tasks: - server - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: server - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-5.0-replica_set-noauth @@ -2729,12 +3060,15 @@ tasks: - replica_set - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: replica_set - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-5.0-sharded_cluster-noauth @@ -2743,12 +3077,15 @@ tasks: - sharded_cluster - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '5.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '5.0' - TOPOLOGY: sharded_cluster - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-4.4-server-noauth @@ -2757,12 +3094,15 @@ tasks: - server - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - TOPOLOGY: server - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-4.4-replica_set-noauth @@ -2771,12 +3111,15 @@ tasks: - replica_set - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - TOPOLOGY: replica_set - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-4.4-sharded_cluster-noauth @@ -2785,12 +3128,15 @@ tasks: - sharded_cluster - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.4'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.4' - TOPOLOGY: sharded_cluster - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-4.2-server-noauth @@ -2799,12 +3145,15 @@ tasks: - server - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.2'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.2' - TOPOLOGY: server - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-4.2-replica_set-noauth @@ -2813,12 +3162,15 @@ tasks: - replica_set - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.2'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.2' - TOPOLOGY: replica_set - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-4.2-sharded_cluster-noauth @@ -2827,12 +3179,15 @@ tasks: - sharded_cluster - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.2'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.2' - TOPOLOGY: sharded_cluster - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-4.0-server-noauth @@ -2841,12 +3196,15 @@ tasks: - server - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.0' - TOPOLOGY: server - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-4.0-replica_set-noauth @@ -2855,12 +3213,15 @@ tasks: - replica_set - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.0' - TOPOLOGY: replica_set - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-4.0-sharded_cluster-noauth @@ -2869,12 +3230,15 @@ tasks: - sharded_cluster - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '4.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '4.0' - TOPOLOGY: sharded_cluster - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-3.6-server-noauth @@ -2883,12 +3247,15 @@ tasks: - server - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '3.6'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '3.6' - TOPOLOGY: server - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-3.6-replica_set-noauth @@ -2897,12 +3264,15 @@ tasks: - replica_set - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '3.6'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '3.6' - TOPOLOGY: replica_set - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-3.6-sharded_cluster-noauth @@ -2911,12 +3281,15 @@ tasks: - sharded_cluster - noauth commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '3.6'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: noauth} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: '3.6' - TOPOLOGY: sharded_cluster - AUTH: noauth - func: bootstrap kms servers - func: run tests - name: test-lambda-example @@ -2924,24 +3297,30 @@ tasks: - latest - lambda commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: rapid} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - TOPOLOGY: server - func: run lambda handler example tests - name: test-lambda-aws-auth-example tags: - latest - lambda commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: rapid} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} - func: install dependencies - func: bootstrap mongo-orchestration - vars: - VERSION: rapid - AUTH: auth - ORCHESTRATION_FILE: auth-aws.json - TOPOLOGY: server - func: add aws auth variables to file - func: setup aws env - func: run lambda handler example tests with aws auth diff --git a/.evergreen/generate_evergreen_tasks.js b/.evergreen/generate_evergreen_tasks.js index a2208070ab..ee7018669c 100644 --- a/.evergreen/generate_evergreen_tasks.js +++ b/.evergreen/generate_evergreen_tasks.js @@ -44,19 +44,34 @@ const SKIPPED_WINDOWS_NODE_VERSIONS = new Set([12]); const TASKS = []; const SINGLETON_TASKS = []; +/** + * @param {Record} expansions - keys become expansion names and values are stringified and become expansion value. + * @returns {{command: 'expansions.update'; type: 'setup'; params: { updates: Array<{key: string, value: string}> } }} + */ +function updateExpansions(expansions) { + const updates = Object.entries(expansions).map(([key, value]) => ({ key, value: `${value}` })); + return { + command: 'expansions.update', + type: 'setup', + params: { updates } + }; +} + + function makeTask({ mongoVersion, topology, tags = [], auth = 'auth' }) { return { name: `test-${mongoVersion}-${topology}${auth === 'noauth' ? '-noauth' : ''}`, tags: [mongoVersion, topology, ...tags], commands: [ + updateExpansions({ + VERSION: mongoVersion, + TOPOLOGY: topology, + AUTH: auth + }), { func: 'install dependencies' }, { func: 'bootstrap mongo-orchestration', - vars: { - VERSION: mongoVersion, - TOPOLOGY: topology, - AUTH: auth - } + }, { func: 'bootstrap kms servers' }, { func: 'run tests' } @@ -85,23 +100,17 @@ BASE_TASKS.push({ name: `test-latest-server-v1-api`, tags: ['latest', 'server', 'v1-api'], commands: [ + updateExpansions({ + VERSION: 'latest', + TOPOLOGY: 'server', + REQUIRE_API_VERSION: '1', + AUTH: 'auth', + MONGODB_API_VERSION: '1' + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: 'latest', - TOPOLOGY: 'server', - REQUIRE_API_VERSION: '1', - AUTH: 'auth' - } - }, + { func: 'bootstrap mongo-orchestration' }, { func: 'bootstrap kms servers' }, - { - func: 'run tests', - vars: { - MONGODB_API_VERSION: '1' - } - } + { func: 'run tests' } ] }); @@ -125,16 +134,14 @@ TASKS.push( name: 'test-5.0-load-balanced', tags: ['latest', 'sharded_cluster', 'load_balancer'], commands: [ + updateExpansions({ + VERSION: '5.0', + TOPOLOGY: 'sharded_cluster', + AUTH: 'auth', + LOAD_BALANCER: 'true' + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: '5.0', - TOPOLOGY: 'sharded_cluster', - AUTH: 'auth', - LOAD_BALANCER: 'true' - } - }, + { func: 'bootstrap mongo-orchestration' }, { func: 'start-load-balancer' }, { func: 'run-lb-tests' }, { func: 'stop-load-balancer' } @@ -144,16 +151,14 @@ TASKS.push( name: 'test-6.0-load-balanced', tags: ['latest', 'sharded_cluster', 'load_balancer'], commands: [ + updateExpansions({ + VERSION: '6.0', + TOPOLOGY: 'sharded_cluster', + AUTH: 'auth', + LOAD_BALANCER: 'true' + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: '6.0', - TOPOLOGY: 'sharded_cluster', - AUTH: 'auth', - LOAD_BALANCER: 'true' - } - }, + { func: 'bootstrap mongo-orchestration' }, { func: 'start-load-balancer' }, { func: 'run-lb-tests' }, { func: 'stop-load-balancer' } @@ -163,16 +168,14 @@ TASKS.push( name: 'test-latest-load-balanced', tags: ['latest', 'sharded_cluster', 'load_balancer'], commands: [ + updateExpansions({ + VERSION: 'latest', + TOPOLOGY: 'sharded_cluster', + AUTH: 'auth', + LOAD_BALANCER: 'true' + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: 'latest', - TOPOLOGY: 'sharded_cluster', - AUTH: 'auth', - LOAD_BALANCER: 'true' - } - }, + { func: 'bootstrap mongo-orchestration' }, { func: 'start-load-balancer' }, { func: 'run-lb-tests' }, { func: 'stop-load-balancer' } @@ -192,14 +195,12 @@ TASKS.push( name: 'test-socks5', tags: [], commands: [ + updateExpansions({ + VERSION: 'latest', + TOPOLOGY: 'replica_set' + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: 'latest', - TOPOLOGY: 'replica_set' - } - }, + { func: 'bootstrap mongo-orchestration' }, { func: 'bootstrap kms servers' }, { func: 'run socks5 tests' } ] @@ -208,16 +209,14 @@ TASKS.push( name: 'test-socks5-tls', tags: [], commands: [ + updateExpansions({ + SSL: 'ssl', + VERSION: 'latest', + TOPOLOGY: 'replica_set' + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - SSL: 'ssl', - VERSION: 'latest', - TOPOLOGY: 'replica_set' - } - }, - { func: 'run socks5 tests', vars: { SSL: 'ssl' } } + { func: 'bootstrap mongo-orchestration' }, + { func: 'run socks5 tests' } ] } ] @@ -228,16 +227,14 @@ for (const compressor of ['zstd', 'snappy']) { name: `test-${compressor}-compression`, tags: ['latest', compressor], commands: [ + updateExpansions({ + VERSION: 'latest', + TOPOLOGY: 'replica_set', + AUTH: 'auth', + COMPRESSOR: compressor + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: 'latest', - TOPOLOGY: 'replica_set', - AUTH: 'auth', - COMPRESSOR: compressor - } - }, + { func: 'bootstrap mongo-orchestration' }, { func: 'run-compression-tests' } ] }); @@ -249,14 +246,12 @@ AWS_LAMBDA_HANDLER_TASKS.push({ name: 'test-lambda-example', tags: ['latest', 'lambda'], commands: [ + updateExpansions({ + VERSION: 'rapid', + TOPOLOGY: 'server' + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: 'rapid', - TOPOLOGY: 'server' - } - }, + { func: 'bootstrap mongo-orchestration' }, { func: 'run lambda handler example tests' } ] }); @@ -266,16 +261,14 @@ AWS_LAMBDA_HANDLER_TASKS.push({ name: 'test-lambda-aws-auth-example', tags: ['latest', 'lambda'], commands: [ + updateExpansions({ + VERSION: 'rapid', + AUTH: 'auth', + ORCHESTRATION_FILE: 'auth-aws.json', + TOPOLOGY: 'server' + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: 'rapid', - AUTH: 'auth', - ORCHESTRATION_FILE: 'auth-aws.json', - TOPOLOGY: 'server' - } - }, + { func: 'bootstrap mongo-orchestration' }, { func: 'add aws auth variables to file' }, { func: 'setup aws env' }, { func: 'run lambda handler example tests with aws auth' } @@ -287,17 +280,15 @@ for (const VERSION of TLS_VERSIONS) { name: `test-tls-support-${VERSION}`, tags: ['tls-support'], commands: [ + updateExpansions({ + VERSION, + SSL: 'ssl', + TOPOLOGY: 'server' + // TODO: NODE-3891 - fix tests broken when AUTH enabled + // AUTH: 'auth' + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION, - SSL: 'ssl', - TOPOLOGY: 'server' - // TODO: NODE-3891 - fix tests broken when AUTH enabled - // AUTH: 'auth' - } - }, + { func: 'bootstrap mongo-orchestration' }, { func: 'run tls tests' } ] }); @@ -321,16 +312,14 @@ for (const VERSION of AWS_AUTH_VERSIONS) { const awsTasks = awsFuncs.map(fn => ({ name: name(fn.func), commands: [ + updateExpansions({ + VERSION: VERSION, + AUTH: 'auth', + ORCHESTRATION_FILE: 'auth-aws.json', + TOPOLOGY: 'server' + }), { func: 'install dependencies' }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: VERSION, - AUTH: 'auth', - ORCHESTRATION_FILE: 'auth-aws.json', - TOPOLOGY: 'server' - } - }, + { func: 'bootstrap mongo-orchestration' }, { func: 'add aws auth variables to file' }, { func: 'setup aws env' }, { ...fn } @@ -340,21 +329,15 @@ for (const VERSION of AWS_AUTH_VERSIONS) { const awsNoOptionalTasks = awsFuncs.map(fn => ({ name: `${name(fn.func)}-no-optional`, commands: [ - { - func: 'install dependencies', - vars: { - NPM_OPTIONS: '--no-optional' - } - }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: VERSION, - AUTH: 'auth', - ORCHESTRATION_FILE: 'auth-aws.json', - TOPOLOGY: 'server' - } - }, + updateExpansions({ + NPM_OPTIONS: '--no-optional', + VERSION: VERSION, + AUTH: 'auth', + ORCHESTRATION_FILE: 'auth-aws.json', + TOPOLOGY: 'server' + }), + { func: 'install dependencies' }, + { func: 'bootstrap mongo-orchestration' }, { func: 'add aws auth variables to file' }, { func: 'setup aws env' }, { ...fn } @@ -452,13 +435,11 @@ SINGLETON_TASKS.push( name: 'run-unit-tests', tags: ['run-unit-tests'], commands: [ - { - func: 'install dependencies', - vars: { - NODE_LTS_VERSION: LOWEST_LTS, - NPM_VERSION: 8 - } - }, + updateExpansions({ + NODE_LTS_VERSION: LOWEST_LTS, + NPM_VERSION: 8 + }), + { func: 'install dependencies' }, { func: 'run unit tests' } ] }, @@ -466,13 +447,11 @@ SINGLETON_TASKS.push( name: 'run-lint-checks', tags: ['run-lint-checks'], commands: [ - { - func: 'install dependencies', - vars: { - NODE_LTS_VERSION: LOWEST_LTS, - NPM_VERSION: 8 - } - }, + updateExpansions({ + NODE_LTS_VERSION: LOWEST_LTS, + NPM_VERSION: 8 + }), + { func: 'install dependencies' }, { func: 'run lint checks' } ] }, @@ -488,19 +467,13 @@ function* makeTypescriptTasks() { name: `compile-driver-typescript-${TS_VERSION}`, tags: [`compile-driver-typescript-${TS_VERSION}`], commands: [ - { - func: 'install dependencies', - vars: { - NODE_LTS_VERSION: LOWEST_LTS, - NPM_VERSION: 8 - } - }, - { - func: 'compile driver', - vars: { - TS_VERSION - } - } + updateExpansions({ + NODE_LTS_VERSION: LOWEST_LTS, + NPM_VERSION: 8, + TS_VERSION + }), + { func: 'install dependencies' }, + { func: 'compile driver' } ] }; } @@ -509,18 +482,12 @@ function* makeTypescriptTasks() { name: `check-types-typescript-${TS_VERSION}`, tags: [`check-types-typescript-${TS_VERSION}`], commands: [ - { - func: 'install dependencies', - vars: { - NODE_LTS_VERSION: LATEST_LTS - } - }, - { - func: 'check types', - vars: { - TS_VERSION - } - } + updateExpansions({ + NODE_LTS_VERSION: LATEST_LTS, + TS_VERSION + }), + { func: 'install dependencies' }, + { func: 'check types' } ] }; } @@ -528,12 +495,10 @@ function* makeTypescriptTasks() { name: 'run-typescript-next', tags: ['run-typescript-next'], commands: [ - { - func: 'install dependencies', - vars: { - NODE_LTS_VERSION: LATEST_LTS - } - }, + updateExpansions({ + NODE_LTS_VERSION: LATEST_LTS + }), + { func: 'install dependencies' }, { func: 'run typescript next' } ] }; @@ -584,43 +549,34 @@ const oneOffFuncs = [ { name: 'run-bson-ext-integration', func: 'run bson-ext test', - vars: { - NODE_LTS_VERSION: LOWEST_LTS, - NPM_VERSION: 8, + expansions: { TEST_NPM_SCRIPT: 'check:test' } }, { name: 'run-bson-ext-unit', func: 'run bson-ext test', - vars: { - NODE_LTS_VERSION: LOWEST_LTS, - NPM_VERSION: 8, + expansions: { TEST_NPM_SCRIPT: 'check:unit' } } ]; -const oneOffFuncAsTasks = oneOffFuncs.map(oneOffFunc => ({ - name: oneOffFunc.name, +const oneOffFuncAsTasks = oneOffFuncs.map(({ name, expansions, func }) => ({ + name, tags: ['run-custom-dependency-tests'], commands: [ - { - func: 'install dependencies', - vars: { - NODE_LTS_VERSION: LOWEST_LTS, - NPM_VERSION: 8 - } - }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: '5.0', - TOPOLOGY: 'server', - AUTH: 'auth' - } - }, - oneOffFunc + updateExpansions({ + ...expansions, + NODE_LTS_VERSION: LOWEST_LTS, + NPM_VERSION: 8, + VERSION: '5.0', + TOPOLOGY: 'server', + AUTH: 'auth' + }), + { func: 'install dependencies' }, + { func: 'bootstrap mongo-orchestration' }, + { func } ] })); @@ -629,27 +585,18 @@ for (const version of ['5.0', 'rapid', 'latest']) { name: `run-custom-csfle-tests-${version}-pinned-commit`, tags: ['run-custom-dependency-tests'], commands: [ - { - func: 'install dependencies', - vars: { - NODE_LTS_VERSION: LOWEST_LTS, - NPM_VERSION: 8 - } - }, - { - func: 'bootstrap mongo-orchestration', - vars: { - VERSION: version, - TOPOLOGY: 'replica_set' - } - }, + updateExpansions({ + NODE_LTS_VERSION: LOWEST_LTS, + NPM_VERSION: 8, + VERSION: version, + TOPOLOGY: 'replica_set', + CSFLE_GIT_REF: '5e922eb1302f1efbf4e8ddeb5f2ef113fd58ced0' + + }), + { func: 'install dependencies' }, + { func: 'bootstrap mongo-orchestration' }, { func: 'bootstrap kms servers' }, - { - func: 'run custom csfle tests', - vars: { - CSFLE_GIT_REF: '5e922eb1302f1efbf4e8ddeb5f2ef113fd58ced0' - } - } + { func: 'run custom csfle tests' } ] }); } @@ -742,6 +689,6 @@ fileData.buildvariants = (fileData.buildvariants || []).concat(BUILD_VARIANTS); fs.writeFileSync( `${__dirname}/config.yml`, - yaml.dump(fileData, { lineWidth: 120, noRefs: true }), + yaml.dump(fileData, { lineWidth: 120, noRefs: true, flowLevel: 7, condenseFlow: false }), 'utf8' );