From 5b0f8470a2aabc4bc61c4a05d663f25d09b51423 Mon Sep 17 00:00:00 2001 From: Neal Beeken Date: Fri, 10 May 2024 16:20:39 -0400 Subject: [PATCH] ci(NODE-6163): add server 8.0 to evergreen (#4108) --- .evergreen/ci_matrix_constants.js | 6 +- .evergreen/config.yml | 909 ++++++++++++++++++++++--- .evergreen/generate_evergreen_tasks.js | 34 + 3 files changed, 841 insertions(+), 108 deletions(-) diff --git a/.evergreen/ci_matrix_constants.js b/.evergreen/ci_matrix_constants.js index 86f3c12c16e..3c27d6d1774 100644 --- a/.evergreen/ci_matrix_constants.js +++ b/.evergreen/ci_matrix_constants.js @@ -1,4 +1,4 @@ -const MONGODB_VERSIONS = ['latest', 'rapid', '7.0', '6.0', '5.0', '4.4', '4.2', '4.0', '3.6']; +const MONGODB_VERSIONS = ['latest', 'rapid', '8.0', '7.0', '6.0', '5.0', '4.4', '4.2', '4.0', '3.6']; const versions = [ { codeName: 'fermium', versionNumber: 14, npmVersion: 9 }, { codeName: 'gallium', versionNumber: 16, npmVersion: 9 }, @@ -10,8 +10,8 @@ const LOWEST_LTS = NODE_VERSIONS[0]; const LATEST_LTS = NODE_VERSIONS[NODE_VERSIONS.length - 1]; const TOPOLOGIES = ['server', 'replica_set', 'sharded_cluster']; -const AWS_AUTH_VERSIONS = ['latest', '6.0', '5.0', '4.4']; -const TLS_VERSIONS = ['latest', '6.0', '5.0', '4.4', '4.2']; +const AWS_AUTH_VERSIONS = ['latest', '8.0', '7.0', '6.0', '5.0', '4.4']; +const TLS_VERSIONS = ['latest', '8.0', '7.0', '6.0', '5.0', '4.4', '4.2']; const DEFAULT_OS = 'rhel80-large'; const WINDOWS_OS = 'windows-vsCurrent-large'; diff --git a/.evergreen/config.yml b/.evergreen/config.yml index b2b63cc7a3d..e3d32802c4d 100644 --- a/.evergreen/config.yml +++ b/.evergreen/config.yml @@ -1270,6 +1270,57 @@ tasks: - func: bootstrap mongo-orchestration - func: bootstrap kms servers - func: run tests + - name: test-8.0-server + tags: + - '8.0' + - server + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_VERSION, value: '9'} + - {key: VERSION, value: '8.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: auth} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: bootstrap kms servers + - func: run tests + - name: test-8.0-replica_set + tags: + - '8.0' + - replica_set + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_VERSION, value: '9'} + - {key: VERSION, value: '8.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: auth} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: bootstrap kms servers + - func: run tests + - name: test-8.0-sharded_cluster + tags: + - '8.0' + - sharded_cluster + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_VERSION, value: '9'} + - {key: VERSION, value: '8.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: bootstrap kms servers + - func: run tests - name: test-7.0-server tags: - '7.0' @@ -1690,6 +1741,44 @@ tasks: - func: start-load-balancer - func: run-lb-tests - func: stop-load-balancer + - name: test-7.0-load-balanced + tags: + - latest + - sharded_cluster + - load_balancer + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '7.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} + - {key: LOAD_BALANCER, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: start-load-balancer + - func: run-lb-tests + - func: stop-load-balancer + - name: test-8.0-load-balanced + tags: + - latest + - sharded_cluster + - load_balancer + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '8.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} + - {key: LOAD_BALANCER, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: start-load-balancer + - func: run-lb-tests + - func: stop-load-balancer - name: test-latest-load-balanced tags: - latest @@ -1700,172 +1789,628 @@ tasks: type: setup params: updates: - - {key: VERSION, value: latest} - - {key: TOPOLOGY, value: sharded_cluster} + - {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 + - func: start-load-balancer + - func: run-lb-tests + - func: stop-load-balancer + - name: test-auth-ldap + tags: + - auth + - ldap + commands: + - func: install dependencies + - func: run ldap tests + - 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 + - func: bootstrap kms servers + - func: run socks5 tests + - name: test-socks5-csfle + tags: + - socks5-csfle + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: latest} + - {key: TOPOLOGY, value: replica_set} + - {key: TEST_SOCKS5_CSFLE, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - 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 + - func: run socks5 tests + - 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 + - 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 + - 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 + - func: run tls tests + - name: test-tls-support-8.0 + tags: + - tls-support + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '8.0'} + - {key: SSL, value: ssl} + - {key: TOPOLOGY, value: server} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: run tls tests + - name: test-tls-support-7.0 + tags: + - tls-support + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '7.0'} + - {key: SSL, value: ssl} + - {key: TOPOLOGY, value: server} + - func: install dependencies + - func: bootstrap mongo-orchestration + - 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 + - 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 + - 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 + - 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 + - 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} + - {key: MONGODB_AWS_SDK, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - 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} + - {key: MONGODB_AWS_SDK, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - 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} + - {key: MONGODB_AWS_SDK, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - 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} + - {key: MONGODB_AWS_SDK, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - 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} + - {key: MONGODB_AWS_SDK, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - 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} + - {key: MONGODB_AWS_SDK, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - 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} + - {key: MONGODB_AWS_SDK, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - 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} + - {key: MONGODB_AWS_SDK, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - 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-peer-dependencies + 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} + - {key: MONGODB_AWS_SDK, value: 'false'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: add aws auth variables to file + - func: setup aws env + - func: remove aws-credential-providers + - func: run aws auth test with regular aws credentials + - name: aws-latest-auth-test-run-aws-auth-test-with-assume-role-credentials-no-peer-dependencies + 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} + - {key: MONGODB_AWS_SDK, value: 'false'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: add aws auth variables to file + - func: setup aws env + - func: remove aws-credential-providers + - func: run aws auth test with assume role credentials + - name: aws-latest-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables-no-peer-dependencies + 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} + - {key: MONGODB_AWS_SDK, value: 'false'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: add aws auth variables to file + - func: setup aws env + - func: remove aws-credential-providers + - 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-peer-dependencies + 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} + - {key: MONGODB_AWS_SDK, value: 'false'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: add aws auth variables to file + - func: setup aws env + - func: remove aws-credential-providers + - 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-peer-dependencies + 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} + - {key: MONGODB_AWS_SDK, value: 'false'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: add aws auth variables to file + - func: setup aws env + - func: remove aws-credential-providers + - func: run aws ECS auth test + - name: aws-8.0-auth-test-run-aws-auth-test-with-regular-aws-credentials + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '8.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: add aws auth variables to file + - func: setup aws env + - func: run aws auth test with regular aws credentials + - name: aws-8.0-auth-test-run-aws-auth-test-with-assume-role-credentials + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '8.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'true'} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: add aws auth variables to file + - func: setup aws env + - func: run aws auth test with assume role credentials + - name: aws-8.0-auth-test-run-aws-auth-test-with-aws-EC2-credentials + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '8.0'} - {key: AUTH, value: auth} - - {key: LOAD_BALANCER, value: 'true'} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'true'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: start-load-balancer - - func: run-lb-tests - - func: stop-load-balancer - - name: test-auth-ldap - tags: - - auth - - ldap - commands: - - func: install dependencies - - func: run ldap tests - - name: test-socks5 - tags: [] + - func: add aws auth variables to file + - func: setup aws env + - func: run aws auth test with aws EC2 credentials + - name: aws-8.0-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: TOPOLOGY, value: replica_set} + - {key: VERSION, value: '8.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'true'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: bootstrap kms servers - - func: run socks5 tests - - name: test-socks5-csfle - tags: - - socks5-csfle + - func: add aws auth variables to file + - func: setup aws env + - func: run aws auth test with aws credentials as environment variables + - name: aws-8.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: latest} - - {key: TOPOLOGY, value: replica_set} - - {key: TEST_SOCKS5_CSFLE, value: 'true'} + - {key: VERSION, value: '8.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'true'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: bootstrap kms servers - - func: run socks5 tests - - name: test-socks5-tls - tags: [] + - 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-8.0-auth-test-run-aws-ECS-auth-test commands: - command: expansions.update type: setup params: updates: - - {key: SSL, value: ssl} - - {key: VERSION, value: latest} - - {key: TOPOLOGY, value: replica_set} + - {key: VERSION, value: '8.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'true'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: run socks5 tests - - name: test-zstd-compression - tags: - - latest - - zstd + - func: add aws auth variables to file + - func: setup aws env + - func: run aws ECS auth test + - name: aws-8.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: latest} - - {key: TOPOLOGY, value: replica_set} + - {key: VERSION, value: '8.0'} - {key: AUTH, value: auth} - - {key: COMPRESSOR, value: zstd} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'true'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: run-compression-tests - - name: test-snappy-compression - tags: - - latest - - snappy + - 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-8.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: latest} - - {key: TOPOLOGY, value: replica_set} + - {key: VERSION, value: '8.0'} - {key: AUTH, value: auth} - - {key: COMPRESSOR, value: snappy} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} + - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'true'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: run-compression-tests - - name: test-tls-support-latest - tags: - - tls-support + - 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-8.0-auth-test-run-aws-auth-test-with-regular-aws-credentials-no-peer-dependencies commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: latest} - - {key: SSL, value: ssl} + - {key: VERSION, value: '8.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'false'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: run tls tests - - name: test-tls-support-6.0 - tags: - - tls-support + - func: add aws auth variables to file + - func: setup aws env + - func: remove aws-credential-providers + - func: run aws auth test with regular aws credentials + - name: aws-8.0-auth-test-run-aws-auth-test-with-assume-role-credentials-no-peer-dependencies commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: '6.0'} - - {key: SSL, value: ssl} + - {key: VERSION, value: '8.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'false'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: run tls tests - - name: test-tls-support-5.0 - tags: - - tls-support + - func: add aws auth variables to file + - func: setup aws env + - func: remove aws-credential-providers + - func: run aws auth test with assume role credentials + - name: aws-8.0-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables-no-peer-dependencies commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: '5.0'} - - {key: SSL, value: ssl} + - {key: VERSION, value: '8.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'false'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: run tls tests - - name: test-tls-support-4.4 - tags: - - tls-support + - func: add aws auth variables to file + - func: setup aws env + - func: remove aws-credential-providers + - func: run aws auth test with aws credentials as environment variables + - name: >- + aws-8.0-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables-no-peer-dependencies commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: '4.4'} - - {key: SSL, value: ssl} + - {key: VERSION, value: '8.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'false'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: run tls tests - - name: test-tls-support-4.2 - tags: - - tls-support + - func: add aws auth variables to file + - func: setup aws env + - func: remove aws-credential-providers + - func: run aws auth test with aws credentials and session token as environment variables + - name: aws-8.0-auth-test-run-aws-ECS-auth-test-no-peer-dependencies commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: '4.2'} - - {key: SSL, value: ssl} + - {key: VERSION, value: '8.0'} + - {key: AUTH, value: auth} + - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} + - {key: MONGODB_AWS_SDK, value: 'false'} - func: install dependencies - func: bootstrap mongo-orchestration - - func: run tls tests - - name: aws-latest-auth-test-run-aws-auth-test-with-regular-aws-credentials + - func: add aws auth variables to file + - func: setup aws env + - func: remove aws-credential-providers + - func: run aws ECS auth test + - name: aws-7.0-auth-test-run-aws-auth-test-with-regular-aws-credentials commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -1875,13 +2420,13 @@ tasks: - 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 + - name: aws-7.0-auth-test-run-aws-auth-test-with-assume-role-credentials commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -1891,13 +2436,13 @@ tasks: - 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 + - name: aws-7.0-auth-test-run-aws-auth-test-with-aws-EC2-credentials commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -1907,13 +2452,13 @@ tasks: - 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 + - name: aws-7.0-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: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -1923,13 +2468,13 @@ tasks: - 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 + - name: aws-7.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: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -1939,13 +2484,13 @@ tasks: - 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 + - name: aws-7.0-auth-test-run-aws-ECS-auth-test commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -1955,13 +2500,13 @@ tasks: - 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 + - name: aws-7.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: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -1971,13 +2516,13 @@ tasks: - 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 + - name: aws-7.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: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -1987,13 +2532,13 @@ tasks: - 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-peer-dependencies + - name: aws-7.0-auth-test-run-aws-auth-test-with-regular-aws-credentials-no-peer-dependencies commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -2004,13 +2549,13 @@ tasks: - func: setup aws env - func: remove aws-credential-providers - func: run aws auth test with regular aws credentials - - name: aws-latest-auth-test-run-aws-auth-test-with-assume-role-credentials-no-peer-dependencies + - name: aws-7.0-auth-test-run-aws-auth-test-with-assume-role-credentials-no-peer-dependencies commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -2021,13 +2566,13 @@ tasks: - func: setup aws env - func: remove aws-credential-providers - func: run aws auth test with assume role credentials - - name: aws-latest-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables-no-peer-dependencies + - name: aws-7.0-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables-no-peer-dependencies commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -2039,13 +2584,13 @@ tasks: - func: remove aws-credential-providers - 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-peer-dependencies + aws-7.0-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables-no-peer-dependencies commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -2056,13 +2601,13 @@ tasks: - func: setup aws env - func: remove aws-credential-providers - 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-peer-dependencies + - name: aws-7.0-auth-test-run-aws-ECS-auth-test-no-peer-dependencies commands: - command: expansions.update type: setup params: updates: - - {key: VERSION, value: latest} + - {key: VERSION, value: '7.0'} - {key: AUTH, value: auth} - {key: ORCHESTRATION_FILE, value: auth-aws.json} - {key: TOPOLOGY, value: server} @@ -3012,6 +3557,60 @@ tasks: - func: bootstrap mongo-orchestration - func: bootstrap kms servers - func: run tests + - name: test-8.0-server-noauth + tags: + - '8.0' + - server + - noauth + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_VERSION, value: '9'} + - {key: VERSION, value: '8.0'} + - {key: TOPOLOGY, value: server} + - {key: AUTH, value: noauth} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: bootstrap kms servers + - func: run tests + - name: test-8.0-replica_set-noauth + tags: + - '8.0' + - replica_set + - noauth + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_VERSION, value: '9'} + - {key: VERSION, value: '8.0'} + - {key: TOPOLOGY, value: replica_set} + - {key: AUTH, value: noauth} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: bootstrap kms servers + - func: run tests + - name: test-8.0-sharded_cluster-noauth + tags: + - '8.0' + - sharded_cluster + - noauth + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: NPM_VERSION, value: '9'} + - {key: VERSION, value: '8.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: noauth} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: bootstrap kms servers + - func: run tests - name: test-7.0-server-noauth tags: - '7.0' @@ -3458,6 +4057,23 @@ tasks: - func: bootstrap mongo-orchestration - func: bootstrap kms servers - func: run tests + - name: test-8.0-csfle-mongocryptd + tags: + - '8.0' + - sharded_cluster + commands: + - command: expansions.update + type: setup + params: + updates: + - {key: VERSION, value: '8.0'} + - {key: TOPOLOGY, value: sharded_cluster} + - {key: AUTH, value: auth} + - {key: TEST_NPM_SCRIPT, value: check:csfle} + - func: install dependencies + - func: bootstrap mongo-orchestration + - func: bootstrap kms servers + - func: run tests - name: test-7.0-csfle-mongocryptd tags: - '7.0' @@ -3690,6 +4306,9 @@ buildvariants: - test-rapid-server - test-rapid-replica_set - test-rapid-sharded_cluster + - test-8.0-server + - test-8.0-replica_set + - test-8.0-sharded_cluster - test-7.0-server - test-7.0-replica_set - test-7.0-sharded_cluster @@ -3715,6 +4334,8 @@ buildvariants: - test-atlas-connectivity - test-5.0-load-balanced - test-6.0-load-balanced + - test-7.0-load-balanced + - test-8.0-load-balanced - test-latest-load-balanced - test-auth-ldap - test-socks5 @@ -3723,6 +4344,8 @@ buildvariants: - test-zstd-compression - test-snappy-compression - test-tls-support-latest + - test-tls-support-8.0 + - test-tls-support-7.0 - test-tls-support-6.0 - test-tls-support-5.0 - test-tls-support-4.4 @@ -3741,6 +4364,9 @@ buildvariants: - test-rapid-server - test-rapid-replica_set - test-rapid-sharded_cluster + - test-8.0-server + - test-8.0-replica_set + - test-8.0-sharded_cluster - test-7.0-server - test-7.0-replica_set - test-7.0-sharded_cluster @@ -3766,12 +4392,16 @@ buildvariants: - test-atlas-connectivity - test-5.0-load-balanced - test-6.0-load-balanced + - test-7.0-load-balanced + - test-8.0-load-balanced - test-latest-load-balanced - test-auth-ldap - test-socks5 - test-socks5-csfle - test-socks5-tls - test-tls-support-latest + - test-tls-support-8.0 + - test-tls-support-7.0 - test-tls-support-6.0 - test-tls-support-5.0 - test-tls-support-4.4 @@ -3790,6 +4420,9 @@ buildvariants: - test-rapid-server - test-rapid-replica_set - test-rapid-sharded_cluster + - test-8.0-server + - test-8.0-replica_set + - test-8.0-sharded_cluster - test-7.0-server - test-7.0-replica_set - test-7.0-sharded_cluster @@ -3815,12 +4448,16 @@ buildvariants: - test-atlas-connectivity - test-5.0-load-balanced - test-6.0-load-balanced + - test-7.0-load-balanced + - test-8.0-load-balanced - test-latest-load-balanced - test-auth-ldap - test-socks5 - test-socks5-csfle - test-socks5-tls - test-tls-support-latest + - test-tls-support-8.0 + - test-tls-support-7.0 - test-tls-support-6.0 - test-tls-support-5.0 - test-tls-support-4.4 @@ -3839,6 +4476,9 @@ buildvariants: - test-rapid-server - test-rapid-replica_set - test-rapid-sharded_cluster + - test-8.0-server + - test-8.0-replica_set + - test-8.0-sharded_cluster - test-7.0-server - test-7.0-replica_set - test-7.0-sharded_cluster @@ -3864,12 +4504,16 @@ buildvariants: - test-atlas-connectivity - test-5.0-load-balanced - test-6.0-load-balanced + - test-7.0-load-balanced + - test-8.0-load-balanced - test-latest-load-balanced - test-auth-ldap - test-socks5 - test-socks5-csfle - test-socks5-tls - test-tls-support-latest + - test-tls-support-8.0 + - test-tls-support-7.0 - test-tls-support-6.0 - test-tls-support-5.0 - test-tls-support-4.4 @@ -3887,6 +4531,9 @@ buildvariants: - test-rapid-server - test-rapid-replica_set - test-rapid-sharded_cluster + - test-8.0-server + - test-8.0-replica_set + - test-8.0-sharded_cluster - test-7.0-server - test-7.0-replica_set - test-7.0-sharded_cluster @@ -3912,12 +4559,16 @@ buildvariants: - test-atlas-connectivity - test-5.0-load-balanced - test-6.0-load-balanced + - test-7.0-load-balanced + - test-8.0-load-balanced - test-latest-load-balanced - test-auth-ldap - test-socks5 - test-socks5-csfle - test-socks5-tls - test-tls-support-latest + - test-tls-support-8.0 + - test-tls-support-7.0 - test-tls-support-6.0 - test-tls-support-5.0 - test-tls-support-4.4 @@ -3935,6 +4586,9 @@ buildvariants: - test-rapid-server - test-rapid-replica_set - test-rapid-sharded_cluster + - test-8.0-server + - test-8.0-replica_set + - test-8.0-sharded_cluster - test-7.0-server - test-7.0-replica_set - test-7.0-sharded_cluster @@ -3960,6 +4614,8 @@ buildvariants: - test-socks5 - test-socks5-tls - test-tls-support-latest + - test-tls-support-8.0 + - test-tls-support-7.0 - test-tls-support-6.0 - test-tls-support-5.0 - test-tls-support-4.4 @@ -3977,6 +4633,9 @@ buildvariants: - test-rapid-server - test-rapid-replica_set - test-rapid-sharded_cluster + - test-8.0-server + - test-8.0-replica_set + - test-8.0-sharded_cluster - test-7.0-server - test-7.0-replica_set - test-7.0-sharded_cluster @@ -4002,6 +4661,8 @@ buildvariants: - test-socks5 - test-socks5-tls - test-tls-support-latest + - test-tls-support-8.0 + - test-tls-support-7.0 - test-tls-support-6.0 - test-tls-support-5.0 - test-tls-support-4.4 @@ -4019,6 +4680,9 @@ buildvariants: - test-rapid-server - test-rapid-replica_set - test-rapid-sharded_cluster + - test-8.0-server + - test-8.0-replica_set + - test-8.0-sharded_cluster - test-7.0-server - test-7.0-replica_set - test-7.0-sharded_cluster @@ -4044,6 +4708,8 @@ buildvariants: - test-socks5 - test-socks5-tls - test-tls-support-latest + - test-tls-support-8.0 + - test-tls-support-7.0 - test-tls-support-6.0 - test-tls-support-5.0 - test-tls-support-4.4 @@ -4059,6 +4725,7 @@ buildvariants: tasks: - test-latest-csfle-mongocryptd - test-rapid-csfle-mongocryptd + - test-8.0-csfle-mongocryptd - test-7.0-csfle-mongocryptd - test-6.0-csfle-mongocryptd - test-5.0-csfle-mongocryptd @@ -4075,6 +4742,7 @@ buildvariants: tasks: - test-latest-csfle-mongocryptd - test-rapid-csfle-mongocryptd + - test-8.0-csfle-mongocryptd - test-7.0-csfle-mongocryptd - test-6.0-csfle-mongocryptd - test-5.0-csfle-mongocryptd @@ -4120,6 +4788,34 @@ buildvariants: - >- aws-latest-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables-no-peer-dependencies - aws-latest-auth-test-run-aws-ECS-auth-test-no-peer-dependencies + - aws-8.0-auth-test-run-aws-auth-test-with-regular-aws-credentials + - aws-8.0-auth-test-run-aws-auth-test-with-assume-role-credentials + - aws-8.0-auth-test-run-aws-auth-test-with-aws-EC2-credentials + - aws-8.0-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables + - aws-8.0-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables + - aws-8.0-auth-test-run-aws-ECS-auth-test + - aws-8.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-unset + - aws-8.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-set + - aws-8.0-auth-test-run-aws-auth-test-with-regular-aws-credentials-no-peer-dependencies + - aws-8.0-auth-test-run-aws-auth-test-with-assume-role-credentials-no-peer-dependencies + - aws-8.0-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables-no-peer-dependencies + - >- + aws-8.0-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables-no-peer-dependencies + - aws-8.0-auth-test-run-aws-ECS-auth-test-no-peer-dependencies + - aws-7.0-auth-test-run-aws-auth-test-with-regular-aws-credentials + - aws-7.0-auth-test-run-aws-auth-test-with-assume-role-credentials + - aws-7.0-auth-test-run-aws-auth-test-with-aws-EC2-credentials + - aws-7.0-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables + - aws-7.0-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables + - aws-7.0-auth-test-run-aws-ECS-auth-test + - aws-7.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-unset + - aws-7.0-auth-test-run-aws-auth-test-AssumeRoleWithWebIdentity-with-AWS_ROLE_SESSION_NAME-set + - aws-7.0-auth-test-run-aws-auth-test-with-regular-aws-credentials-no-peer-dependencies + - aws-7.0-auth-test-run-aws-auth-test-with-assume-role-credentials-no-peer-dependencies + - aws-7.0-auth-test-run-aws-auth-test-with-aws-credentials-as-environment-variables-no-peer-dependencies + - >- + aws-7.0-auth-test-run-aws-auth-test-with-aws-credentials-and-session-token-as-environment-variables-no-peer-dependencies + - aws-7.0-auth-test-run-aws-ECS-auth-test-no-peer-dependencies - aws-6.0-auth-test-run-aws-auth-test-with-regular-aws-credentials - aws-6.0-auth-test-run-aws-auth-test-with-assume-role-credentials - aws-6.0-auth-test-run-aws-auth-test-with-aws-EC2-credentials @@ -4214,6 +4910,9 @@ buildvariants: - test-rapid-server-noauth - test-rapid-replica_set-noauth - test-rapid-sharded_cluster-noauth + - test-8.0-server-noauth + - test-8.0-replica_set-noauth + - test-8.0-sharded_cluster-noauth - test-7.0-server-noauth - test-7.0-replica_set-noauth - test-7.0-sharded_cluster-noauth diff --git a/.evergreen/generate_evergreen_tasks.js b/.evergreen/generate_evergreen_tasks.js index b022d935d94..242c91ce9e8 100644 --- a/.evergreen/generate_evergreen_tasks.js +++ b/.evergreen/generate_evergreen_tasks.js @@ -159,6 +159,40 @@ TASKS.push( { func: 'stop-load-balancer' } ] }, + { + name: 'test-7.0-load-balanced', + tags: ['latest', 'sharded_cluster', 'load_balancer'], + commands: [ + updateExpansions({ + VERSION: '7.0', + TOPOLOGY: 'sharded_cluster', + AUTH: 'auth', + LOAD_BALANCER: 'true' + }), + { func: 'install dependencies' }, + { func: 'bootstrap mongo-orchestration' }, + { func: 'start-load-balancer' }, + { func: 'run-lb-tests' }, + { func: 'stop-load-balancer' } + ] + }, + { + name: 'test-8.0-load-balanced', + tags: ['latest', 'sharded_cluster', 'load_balancer'], + commands: [ + updateExpansions({ + VERSION: '8.0', + TOPOLOGY: 'sharded_cluster', + AUTH: 'auth', + LOAD_BALANCER: 'true' + }), + { func: 'install dependencies' }, + { func: 'bootstrap mongo-orchestration' }, + { func: 'start-load-balancer' }, + { func: 'run-lb-tests' }, + { func: 'stop-load-balancer' } + ] + }, { name: 'test-latest-load-balanced', tags: ['latest', 'sharded_cluster', 'load_balancer'],