diff --git a/.evergreen/generated_configs/tasks.yml b/.evergreen/generated_configs/tasks.yml index 4676ab80f3..980dbfbe51 100644 --- a/.evergreen/generated_configs/tasks.yml +++ b/.evergreen/generated_configs/tasks.yml @@ -33,7 +33,7 @@ tasks: tags: [aws_lambda] # Aws tests - - name: test-auth-aws-4.4-regular + - name: test-auth-aws-4.4-regular-python3.9 commands: - func: run server vars: @@ -44,541 +44,61 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: regular + PYTHON_VERSION: "3.9" tags: [auth-aws, auth-aws-regular] - - name: test-auth-aws-4.4-assume-role - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "4.4" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: assume-role - tags: [auth-aws, auth-aws-assume-role] - - name: test-auth-aws-4.4-ec2 - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "4.4" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ec2 - tags: [auth-aws, auth-aws-ec2] - - name: test-auth-aws-4.4-env-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "4.4" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: env-creds - tags: [auth-aws, auth-aws-env-creds] - - name: test-auth-aws-4.4-session-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "4.4" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: session-creds - tags: [auth-aws, auth-aws-session-creds] - - name: test-auth-aws-4.4-web-identity - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "4.4" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-4.4-ecs - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "4.4" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ecs - tags: [auth-aws, auth-aws-ecs] - - name: test-auth-aws-4.4-web-identity-session-name - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "4.4" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - AWS_ROLE_SESSION_NAME: test - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-5.0-regular - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "5.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: regular - tags: [auth-aws, auth-aws-regular] - - name: test-auth-aws-5.0-assume-role - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "5.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: assume-role - tags: [auth-aws, auth-aws-assume-role] - - name: test-auth-aws-5.0-ec2 - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "5.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ec2 - tags: [auth-aws, auth-aws-ec2] - - name: test-auth-aws-5.0-env-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "5.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: env-creds - tags: [auth-aws, auth-aws-env-creds] - - name: test-auth-aws-5.0-session-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "5.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: session-creds - tags: [auth-aws, auth-aws-session-creds] - - name: test-auth-aws-5.0-web-identity - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "5.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-5.0-ecs - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "5.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ecs - tags: [auth-aws, auth-aws-ecs] - - name: test-auth-aws-5.0-web-identity-session-name - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "5.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - AWS_ROLE_SESSION_NAME: test - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-6.0-regular - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "6.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: regular - tags: [auth-aws, auth-aws-regular] - - name: test-auth-aws-6.0-assume-role - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "6.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: assume-role - tags: [auth-aws, auth-aws-assume-role] - - name: test-auth-aws-6.0-ec2 - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "6.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ec2 - tags: [auth-aws, auth-aws-ec2] - - name: test-auth-aws-6.0-env-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "6.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: env-creds - tags: [auth-aws, auth-aws-env-creds] - - name: test-auth-aws-6.0-session-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "6.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: session-creds - tags: [auth-aws, auth-aws-session-creds] - - name: test-auth-aws-6.0-web-identity - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "6.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-6.0-ecs - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "6.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ecs - tags: [auth-aws, auth-aws-ecs] - - name: test-auth-aws-6.0-web-identity-session-name - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "6.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - AWS_ROLE_SESSION_NAME: test - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-7.0-regular - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "7.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: regular - tags: [auth-aws, auth-aws-regular] - - name: test-auth-aws-7.0-assume-role - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "7.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: assume-role - tags: [auth-aws, auth-aws-assume-role] - - name: test-auth-aws-7.0-ec2 - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "7.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ec2 - tags: [auth-aws, auth-aws-ec2] - - name: test-auth-aws-7.0-env-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "7.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: env-creds - tags: [auth-aws, auth-aws-env-creds] - - name: test-auth-aws-7.0-session-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "7.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: session-creds - tags: [auth-aws, auth-aws-session-creds] - - name: test-auth-aws-7.0-web-identity - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "7.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-7.0-ecs - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "7.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ecs - tags: [auth-aws, auth-aws-ecs] - - name: test-auth-aws-7.0-web-identity-session-name - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "7.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - AWS_ROLE_SESSION_NAME: test - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-8.0-regular - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "8.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: regular - tags: [auth-aws, auth-aws-regular] - - name: test-auth-aws-8.0-assume-role + - name: test-auth-aws-5.0-assume-role-python3.10 commands: - func: run server vars: AUTH_AWS: "1" - VERSION: "8.0" + VERSION: "5.0" - func: assume ec2 role - func: run tests vars: TEST_NAME: auth_aws SUB_TEST_NAME: assume-role + PYTHON_VERSION: "3.10" tags: [auth-aws, auth-aws-assume-role] - - name: test-auth-aws-8.0-ec2 + - name: test-auth-aws-6.0-ec2-python3.11 commands: - func: run server vars: AUTH_AWS: "1" - VERSION: "8.0" + VERSION: "6.0" - func: assume ec2 role - func: run tests vars: TEST_NAME: auth_aws SUB_TEST_NAME: ec2 + PYTHON_VERSION: "3.11" tags: [auth-aws, auth-aws-ec2] - - name: test-auth-aws-8.0-env-creds + - name: test-auth-aws-7.0-env-creds-python3.12 commands: - func: run server vars: AUTH_AWS: "1" - VERSION: "8.0" + VERSION: "7.0" - func: assume ec2 role - func: run tests vars: TEST_NAME: auth_aws SUB_TEST_NAME: env-creds + PYTHON_VERSION: "3.12" tags: [auth-aws, auth-aws-env-creds] - - name: test-auth-aws-8.0-session-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "8.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: session-creds - tags: [auth-aws, auth-aws-session-creds] - - name: test-auth-aws-8.0-web-identity - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "8.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-8.0-ecs - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: "8.0" - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ecs - tags: [auth-aws, auth-aws-ecs] - - name: test-auth-aws-8.0-web-identity-session-name + - name: test-auth-aws-8.0-session-creds-python3.13 commands: - func: run server vars: AUTH_AWS: "1" VERSION: "8.0" - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - AWS_ROLE_SESSION_NAME: test - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-rapid-regular - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: rapid - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: regular - tags: [auth-aws, auth-aws-regular] - - name: test-auth-aws-rapid-assume-role - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: rapid - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: assume-role - tags: [auth-aws, auth-aws-assume-role] - - name: test-auth-aws-rapid-ec2 - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: rapid - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ec2 - tags: [auth-aws, auth-aws-ec2] - - name: test-auth-aws-rapid-env-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: rapid - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: env-creds - tags: [auth-aws, auth-aws-env-creds] - - name: test-auth-aws-rapid-session-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: rapid - - func: assume ec2 role - func: run tests vars: TEST_NAME: auth_aws SUB_TEST_NAME: session-creds + PYTHON_VERSION: "3.13" tags: [auth-aws, auth-aws-session-creds] - - name: test-auth-aws-rapid-web-identity + - name: test-auth-aws-rapid-web-identity-python3.9 commands: - func: run server vars: @@ -589,20 +109,9 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: web-identity + PYTHON_VERSION: "3.9" tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-rapid-ecs - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: rapid - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ecs - tags: [auth-aws, auth-aws-ecs] - - name: test-auth-aws-rapid-web-identity-session-name + - name: test-auth-aws-rapid-web-identity-session-name-python3.9 commands: - func: run server vars: @@ -614,80 +123,9 @@ tasks: TEST_NAME: auth_aws SUB_TEST_NAME: web-identity AWS_ROLE_SESSION_NAME: test + PYTHON_VERSION: "3.9" tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-latest-regular - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: latest - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: regular - tags: [auth-aws, auth-aws-regular] - - name: test-auth-aws-latest-assume-role - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: latest - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: assume-role - tags: [auth-aws, auth-aws-assume-role] - - name: test-auth-aws-latest-ec2 - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: latest - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: ec2 - tags: [auth-aws, auth-aws-ec2] - - name: test-auth-aws-latest-env-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: latest - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: env-creds - tags: [auth-aws, auth-aws-env-creds] - - name: test-auth-aws-latest-session-creds - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: latest - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: session-creds - tags: [auth-aws, auth-aws-session-creds] - - name: test-auth-aws-latest-web-identity - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: latest - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - tags: [auth-aws, auth-aws-web-identity] - - name: test-auth-aws-latest-ecs + - name: test-auth-aws-latest-ecs-python3.10 commands: - func: run server vars: @@ -698,20 +136,8 @@ tasks: vars: TEST_NAME: auth_aws SUB_TEST_NAME: ecs + PYTHON_VERSION: "3.10" tags: [auth-aws, auth-aws-ecs] - - name: test-auth-aws-latest-web-identity-session-name - commands: - - func: run server - vars: - AUTH_AWS: "1" - VERSION: latest - - func: assume ec2 role - - func: run tests - vars: - TEST_NAME: auth_aws - SUB_TEST_NAME: web-identity - AWS_ROLE_SESSION_NAME: test - tags: [auth-aws, auth-aws-web-identity] # Backport pr tests - name: backport-pr @@ -1077,45 +503,65 @@ tasks: tags: [mockupdb] # Mod wsgi tests - - name: mod-wsgi-standalone + - name: mod-wsgi-replica-set-python3.9 commands: - func: run server vars: - TOPOLOGY: standalone + TOPOLOGY: replica_set + PYTHON_VERSION: "3.9" - func: run tests vars: TEST_NAME: mod_wsgi SUB_TEST_NAME: standalone + PYTHON_VERSION: "3.9" + tags: [mod_wsgi] + - name: mod-wsgi-embedded-mode-replica-set-python3.10 + commands: + - func: run server + vars: + TOPOLOGY: replica_set + PYTHON_VERSION: "3.10" + - func: run tests + vars: + TEST_NAME: mod_wsgi + SUB_TEST_NAME: embedded + PYTHON_VERSION: "3.10" tags: [mod_wsgi] - - name: mod-wsgi-replica-set + - name: mod-wsgi-replica-set-python3.11 commands: - func: run server vars: TOPOLOGY: replica_set + PYTHON_VERSION: "3.11" - func: run tests vars: TEST_NAME: mod_wsgi SUB_TEST_NAME: standalone + PYTHON_VERSION: "3.11" tags: [mod_wsgi] - - name: mod-wsgi-embedded-mode-standalone + - name: mod-wsgi-embedded-mode-replica-set-python3.12 commands: - func: run server vars: - TOPOLOGY: standalone + TOPOLOGY: replica_set + PYTHON_VERSION: "3.12" - func: run tests vars: TEST_NAME: mod_wsgi SUB_TEST_NAME: embedded + PYTHON_VERSION: "3.12" tags: [mod_wsgi] - - name: mod-wsgi-embedded-mode-replica-set + - name: mod-wsgi-replica-set-python3.13 commands: - func: run server vars: TOPOLOGY: replica_set + PYTHON_VERSION: "3.13" - func: run tests vars: TEST_NAME: mod_wsgi - SUB_TEST_NAME: embedded + SUB_TEST_NAME: standalone + PYTHON_VERSION: "3.13" tags: [mod_wsgi] # No server tests diff --git a/.evergreen/generated_configs/variants.yml b/.evergreen/generated_configs/variants.yml index 0855a27636..275de4c2fd 100644 --- a/.evergreen/generated_configs/variants.yml +++ b/.evergreen/generated_configs/variants.yml @@ -100,54 +100,24 @@ buildvariants: PYTHON_BINARY: /opt/python/3.13/bin/python3 # Aws auth tests - - name: auth-aws-ubuntu-20-python3.9 + - name: auth-aws-ubuntu-20 tasks: - name: .auth-aws - display_name: Auth AWS Ubuntu-20 Python3.9 + display_name: Auth AWS Ubuntu-20 run_on: - ubuntu2004-small - expansions: - PYTHON_BINARY: /opt/python/3.9/bin/python3 - - name: auth-aws-ubuntu-20-python3.13 - tasks: - - name: .auth-aws - display_name: Auth AWS Ubuntu-20 Python3.13 - run_on: - - ubuntu2004-small - expansions: - PYTHON_BINARY: /opt/python/3.13/bin/python3 - - name: auth-aws-win64-python3.9 + - name: auth-aws-win64 tasks: - name: .auth-aws !.auth-aws-ecs - display_name: Auth AWS Win64 Python3.9 + display_name: Auth AWS Win64 run_on: - windows-64-vsMulti-small - expansions: - PYTHON_BINARY: C:/python/Python39/python.exe - - name: auth-aws-win64-python3.13 - tasks: - - name: .auth-aws !.auth-aws-ecs - display_name: Auth AWS Win64 Python3.13 - run_on: - - windows-64-vsMulti-small - expansions: - PYTHON_BINARY: C:/python/Python313/python.exe - - name: auth-aws-macos-python3.9 + - name: auth-aws-macos tasks: - name: .auth-aws !.auth-aws-web-identity !.auth-aws-ecs !.auth-aws-ec2 - display_name: Auth AWS macOS Python3.9 + display_name: Auth AWS macOS run_on: - macos-14 - expansions: - PYTHON_BINARY: /Library/Frameworks/Python.Framework/Versions/3.9/bin/python3 - - name: auth-aws-macos-python3.13 - tasks: - - name: .auth-aws !.auth-aws-web-identity !.auth-aws-ecs !.auth-aws-ec2 - display_name: Auth AWS macOS Python3.13 - run_on: - - macos-14 - expansions: - PYTHON_BINARY: /Library/Frameworks/Python.Framework/Versions/3.13/bin/python3 # Aws lambda tests - name: faas-lambda @@ -514,39 +484,26 @@ buildvariants: PYTHON_BINARY: /Library/Frameworks/PythonT.Framework/Versions/3.13/bin/python3t # Green framework tests - - name: green-eventlet-rhel8-python3.9 + - name: green-eventlet-rhel8 tasks: - - name: .standalone .noauth .nossl .sync_async - display_name: Green Eventlet RHEL8 Python3.9 + - name: .standard-linux .standalone-noauth-nossl .python-3.9 + display_name: Green Eventlet RHEL8 run_on: - rhel87-small expansions: GREEN_FRAMEWORK: eventlet AUTH: auth SSL: ssl - PYTHON_BINARY: /opt/python/3.9/bin/python3 - - name: green-gevent-rhel8-python3.9 - tasks: - - name: .standalone .noauth .nossl .sync_async - display_name: Green Gevent RHEL8 Python3.9 - run_on: - - rhel87-small - expansions: - GREEN_FRAMEWORK: gevent - AUTH: auth - SSL: ssl - PYTHON_BINARY: /opt/python/3.9/bin/python3 - - name: green-gevent-rhel8-python3.13 + - name: green-gevent-rhel8 tasks: - - name: .standalone .noauth .nossl .sync_async - display_name: Green Gevent RHEL8 Python3.13 + - name: .standard-linux .standalone-noauth-nossl + display_name: Green Gevent RHEL8 run_on: - rhel87-small expansions: GREEN_FRAMEWORK: gevent AUTH: auth SSL: ssl - PYTHON_BINARY: /opt/python/3.13/bin/python3 # Import time tests - name: import-time @@ -589,24 +546,14 @@ buildvariants: PYTHON_BINARY: /opt/python/3.9/bin/python3 # Mod wsgi tests - - name: mod_wsgi-ubuntu-22-python3.9 + - name: mod_wsgi-ubuntu-22 tasks: - name: .mod_wsgi - display_name: mod_wsgi Ubuntu-22 Python3.9 + display_name: mod_wsgi Ubuntu-22 run_on: - ubuntu2204-small expansions: MOD_WSGI_VERSION: "4" - PYTHON_BINARY: /opt/python/3.9/bin/python3 - - name: mod_wsgi-ubuntu-22-python3.13 - tasks: - - name: .mod_wsgi - display_name: mod_wsgi Ubuntu-22 Python3.13 - run_on: - - ubuntu2204-small - expansions: - MOD_WSGI_VERSION: "4" - PYTHON_BINARY: /opt/python/3.13/bin/python3 # No c ext tests - name: no-c-ext-rhel8 diff --git a/.evergreen/scripts/generate_config.py b/.evergreen/scripts/generate_config.py index b6bd5dce26..c610bc2353 100644 --- a/.evergreen/scripts/generate_config.py +++ b/.evergreen/scripts/generate_config.py @@ -340,18 +340,16 @@ def create_stable_api_variants(): def create_green_framework_variants(): variants = [] - tasks = [".standalone .noauth .nossl .sync_async"] host = DEFAULT_HOST - for python, framework in product([CPYTHONS[0], CPYTHONS[-1]], ["eventlet", "gevent"]): - if framework == "eventlet" and python == CPYTHONS[-1]: + for framework in ["eventlet", "gevent"]: + tasks = [".standard-linux .standalone-noauth-nossl"] + if framework == "eventlet": # Eventlet has issues with dnspython > 2.0 and newer versions of CPython # https://jira.mongodb.org/browse/PYTHON-5284 - continue + tasks = [".standard-linux .standalone-noauth-nossl .python-3.9"] expansions = dict(GREEN_FRAMEWORK=framework, AUTH="auth", SSL="ssl") - display_name = get_variant_name(f"Green {framework.capitalize()}", host, python=python) - variant = create_variant( - tasks, display_name, host=host, python=python, expansions=expansions - ) + display_name = get_variant_name(f"Green {framework.capitalize()}", host) + variant = create_variant(tasks, display_name, host=host, expansions=expansions) variants.append(variant) return variants @@ -377,17 +375,11 @@ def create_atlas_data_lake_variants(): def create_mod_wsgi_variants(): - variants = [] host = HOSTS["ubuntu22"] tasks = [".mod_wsgi"] expansions = dict(MOD_WSGI_VERSION="4") - for python in MIN_MAX_PYTHON: - display_name = get_variant_name("mod_wsgi", host, python=python) - variant = create_variant( - tasks, display_name, host=host, python=python, expansions=expansions - ) - variants.append(variant) - return variants + display_name = get_variant_name("mod_wsgi", host) + return [create_variant(tasks, display_name, host=host, expansions=expansions)] def create_disable_test_commands_variants(): @@ -518,7 +510,7 @@ def create_perf_variants(): def create_aws_auth_variants(): variants = [] - for host_name, python in product(["ubuntu20", "win64", "macos"], MIN_MAX_PYTHON): + for host_name in ["ubuntu20", "win64", "macos"]: expansions = dict() tasks = [".auth-aws"] if host_name == "macos": @@ -528,9 +520,8 @@ def create_aws_auth_variants(): host = HOSTS[host_name] variant = create_variant( tasks, - get_variant_name("Auth AWS", host, python=python), + get_variant_name("Auth AWS", host), host=host, - python=python, expansions=expansions, ) variants.append(variant) @@ -755,29 +746,32 @@ def create_aws_tasks(): "web-identity", "ecs", ] - for version in get_versions_from("4.4"): + for version, test_type, python in zip_cycle(get_versions_from("4.4"), aws_test_types, CPYTHONS): base_name = f"test-auth-aws-{version}" base_tags = ["auth-aws"] server_vars = dict(AUTH_AWS="1", VERSION=version) server_func = FunctionCall(func="run server", vars=server_vars) assume_func = FunctionCall(func="assume ec2 role") - for test_type in aws_test_types: - tags = [*base_tags, f"auth-aws-{test_type}"] - name = f"{base_name}-{test_type}" - test_vars = dict(TEST_NAME="auth_aws", SUB_TEST_NAME=test_type) - test_func = FunctionCall(func="run tests", vars=test_vars) - funcs = [server_func, assume_func, test_func] - tasks.append(EvgTask(name=name, tags=tags, commands=funcs)) - - tags = [*base_tags, "auth-aws-web-identity"] - name = f"{base_name}-web-identity-session-name" - test_vars = dict( - TEST_NAME="auth_aws", SUB_TEST_NAME="web-identity", AWS_ROLE_SESSION_NAME="test" - ) + tags = [*base_tags, f"auth-aws-{test_type}"] + name = get_task_name(f"{base_name}-{test_type}", python=python) + test_vars = dict(TEST_NAME="auth_aws", SUB_TEST_NAME=test_type, PYTHON_VERSION=python) test_func = FunctionCall(func="run tests", vars=test_vars) funcs = [server_func, assume_func, test_func] tasks.append(EvgTask(name=name, tags=tags, commands=funcs)) + if test_type == "web-identity": + tags = [*base_tags, "auth-aws-web-identity"] + name = get_task_name(f"{base_name}-web-identity-session-name", python=python) + test_vars = dict( + TEST_NAME="auth_aws", + SUB_TEST_NAME="web-identity", + AWS_ROLE_SESSION_NAME="test", + PYTHON_VERSION=python, + ) + test_func = FunctionCall(func="run tests", vars=test_vars) + funcs = [server_func, assume_func, test_func] + tasks.append(EvgTask(name=name, tags=tags, commands=funcs)) + return tasks @@ -796,15 +790,18 @@ def create_oidc_tasks(): def create_mod_wsgi_tasks(): tasks = [] - for test, topology in product(["standalone", "embedded-mode"], ["standalone", "replica_set"]): + for (test, topology), python in zip_cycle( + product(["standalone", "embedded-mode"], ["standalone", "replica_set"]), CPYTHONS + ): if test == "standalone": task_name = "mod-wsgi-" else: task_name = "mod-wsgi-embedded-mode-" task_name += topology.replace("_", "-") - server_vars = dict(TOPOLOGY=topology) + task_name = get_task_name(task_name, python=python) + server_vars = dict(TOPOLOGY=topology, PYTHON_VERSION=python) server_func = FunctionCall(func="run server", vars=server_vars) - vars = dict(TEST_NAME="mod_wsgi", SUB_TEST_NAME=test.split("-")[0]) + vars = dict(TEST_NAME="mod_wsgi", SUB_TEST_NAME=test.split("-")[0], PYTHON_VERSION=python) test_func = FunctionCall(func="run tests", vars=vars) tags = ["mod_wsgi"] commands = [server_func, test_func]