diff --git a/.evergreen/config.yml b/.evergreen/config.yml index 4ffdfca581..3230b827b0 100644 --- a/.evergreen/config.yml +++ b/.evergreen/config.yml @@ -2247,19 +2247,6 @@ axes: variables: MOD_WSGI_VERSION: "4" - # Install and use the driver's C-extensions? - - id: c-extensions - display_name: "C Extensions" - values: - - id: "without-c-extensions" - display_name: "Without C Extensions" - variables: - NO_EXT: "1" - - id: "with-c-extensions" - display_name: "With C Extensions" - variables: - NO_EXT: "" - # Run with test commands disabled on server? - id: disableTestCommands display_name: Disable test commands @@ -3460,6 +3447,89 @@ buildvariants: SSL: ssl PYTHON_BINARY: /opt/python/3.12/bin/python3 +# No C Ext tests. +- name: no-c-ext-rhel8-py3.9 + tasks: + - name: .standalone + display_name: No C Ext RHEL8 py3.9 + run_on: + - rhel87-small + expansions: + NO_EXT: "1" + PYTHON_BINARY: /opt/python/3.9/bin/python3 +- name: no-c-ext-rhel8-py3.10 + tasks: + - name: .replica_set + display_name: No C Ext RHEL8 py3.10 + run_on: + - rhel87-small + expansions: + NO_EXT: "1" + PYTHON_BINARY: /opt/python/3.10/bin/python3 +- name: no-c-ext-rhel8-py3.11 + tasks: + - name: .sharded_cluster + display_name: No C Ext RHEL8 py3.11 + run_on: + - rhel87-small + expansions: + NO_EXT: "1" + PYTHON_BINARY: /opt/python/3.11/bin/python3 +- name: no-c-ext-rhel8-py3.12 + tasks: + - name: .standalone + display_name: No C Ext RHEL8 py3.12 + run_on: + - rhel87-small + expansions: + NO_EXT: "1" + PYTHON_BINARY: /opt/python/3.12/bin/python3 +- name: no-c-ext-rhel8-py3.13 + tasks: + - name: .replica_set + display_name: No C Ext RHEL8 py3.13 + run_on: + - rhel87-small + expansions: + NO_EXT: "1" + PYTHON_BINARY: /opt/python/3.13/bin/python3 + +# Atlas Data Lake tests. +- name: atlas-data-lake-rhel8-py3.9-no-c + tasks: + - name: atlas-data-lake-tests + display_name: Atlas Data Lake RHEL8 py3.9 No C + run_on: + - rhel87-small + expansions: + NO_EXT: "1" + PYTHON_BINARY: /opt/python/3.9/bin/python3 +- name: atlas-data-lake-rhel8-py3.9 + tasks: + - name: atlas-data-lake-tests + display_name: Atlas Data Lake RHEL8 py3.9 + run_on: + - rhel87-small + expansions: + PYTHON_BINARY: /opt/python/3.9/bin/python3 +- name: atlas-data-lake-rhel8-py3.13-no-c + tasks: + - name: atlas-data-lake-tests + display_name: Atlas Data Lake RHEL8 py3.13 No C + run_on: + - rhel87-small + expansions: + NO_EXT: "1" + PYTHON_BINARY: /opt/python/3.13/bin/python3 +- name: atlas-data-lake-rhel8-py3.13 + tasks: + - name: atlas-data-lake-tests + display_name: Atlas Data Lake RHEL8 py3.13 + run_on: + - rhel87-small + expansions: + PYTHON_BINARY: /opt/python/3.13/bin/python3 + - matrix_name: "tests-fips" matrix_spec: platform: @@ -3482,32 +3552,6 @@ buildvariants: tasks: - ".6.0" -- matrix_name: "tests-python-version-rhel8-without-c-extensions" - matrix_spec: - platform: rhel8 - python-version: "*" - c-extensions: without-c-extensions - auth-ssl: noauth-nossl - coverage: "*" - exclude_spec: - # These interpreters are always tested without extensions. - - platform: rhel8 - python-version: ["pypy3.9", "pypy3.10"] - c-extensions: "*" - auth-ssl: "*" - coverage: "*" - display_name: "${c-extensions} ${python-version} ${platform} ${auth} ${ssl} ${coverage}" - tasks: &all-server-versions - - ".rapid" - - ".latest" - - ".8.0" - - ".7.0" - - ".6.0" - - ".5.0" - - ".4.4" - - ".4.2" - - ".4.0" - - matrix_name: "tests-python-version-supports-openssl-102-test-ssl" matrix_spec: platform: rhel7 @@ -3596,16 +3640,6 @@ buildvariants: tasks: - "serverless_task_group" -- matrix_name: "data-lake-spec-tests" - matrix_spec: - platform: ubuntu-22.04 - python-version: ["3.9", "3.10"] - auth: "auth" - c-extensions: "*" - display_name: "Atlas Data Lake ${python-version} ${c-extensions}" - tasks: - - name: atlas-data-lake-tests - # OCSP test matrix. - name: ocsp-test-rhel8-v4.4-py3.9 tasks: diff --git a/.evergreen/scripts/generate_config.py b/.evergreen/scripts/generate_config.py index 2d20d2de68..aa5bf18c9e 100644 --- a/.evergreen/scripts/generate_config.py +++ b/.evergreen/scripts/generate_config.py @@ -528,10 +528,40 @@ def create_green_framework_variants(): return variants +def generate_no_c_ext_variants(): + variants = [] + host = "rhel8" + for python, topology in zip_cycle(CPYTHONS, TOPOLOGIES): + tasks = [f".{topology}"] + expansions = dict() + handle_c_ext(C_EXTS[0], expansions) + display_name = get_display_name("No C Ext", host, python=python) + variant = create_variant( + tasks, display_name, host=host, python=python, expansions=expansions + ) + variants.append(variant) + return variants + + +def generate_atlas_data_lake_variants(): + variants = [] + host = "rhel8" + for python, c_ext in product(MIN_MAX_PYTHON, C_EXTS): + tasks = ["atlas-data-lake-tests"] + expansions = dict() + handle_c_ext(c_ext, expansions) + display_name = get_display_name("Atlas Data Lake", host, python=python, **expansions) + variant = create_variant( + tasks, display_name, host=host, python=python, expansions=expansions + ) + variants.append(variant) + return variants + + ################## # Generate Config ################## -variants = create_green_framework_variants() +variants = generate_atlas_data_lake_variants() # print(len(variants)) generate_yaml(variants=variants)