Merge branch 'master' of github.com:mongodb/mongo-python-driver
This commit is contained in:
commit
7827fa9968
@ -2112,47 +2112,6 @@ axes:
|
||||
AUTH: "noauth"
|
||||
SSL: "nossl"
|
||||
|
||||
# Choice of MongoDB server version
|
||||
- id: mongodb-version
|
||||
display_name: "MongoDB"
|
||||
values:
|
||||
- id: "4.0"
|
||||
display_name: "MongoDB 4.0"
|
||||
variables:
|
||||
VERSION: "4.0"
|
||||
- id: "4.2"
|
||||
display_name: "MongoDB 4.2"
|
||||
variables:
|
||||
VERSION: "4.2"
|
||||
- id: "4.4"
|
||||
display_name: "MongoDB 4.4"
|
||||
variables:
|
||||
VERSION: "4.4"
|
||||
- id: "5.0"
|
||||
display_name: "MongoDB 5.0"
|
||||
variables:
|
||||
VERSION: "5.0"
|
||||
- id: "6.0"
|
||||
display_name: "MongoDB 6.0"
|
||||
variables:
|
||||
VERSION: "6.0"
|
||||
- id: "7.0"
|
||||
display_name: "MongoDB 7.0"
|
||||
variables:
|
||||
VERSION: "7.0"
|
||||
- id: "8.0"
|
||||
display_name: "MongoDB 8.0"
|
||||
variables:
|
||||
VERSION: "8.0"
|
||||
- id: "latest"
|
||||
display_name: "MongoDB latest"
|
||||
variables:
|
||||
VERSION: "latest"
|
||||
- id: "rapid"
|
||||
display_name: "MongoDB rapid"
|
||||
variables:
|
||||
VERSION: "rapid"
|
||||
|
||||
# Choice of Python runtime version
|
||||
- id: python-version
|
||||
display_name: "Python"
|
||||
@ -2212,69 +2171,6 @@ axes:
|
||||
variables:
|
||||
PYTHON_BINARY: "C:/python/Python313/python.exe"
|
||||
|
||||
- id: python-version-windows-32
|
||||
display_name: "Python"
|
||||
values:
|
||||
|
||||
|
||||
- id: "3.9"
|
||||
display_name: "32-bit Python 3.9"
|
||||
variables:
|
||||
PYTHON_BINARY: "C:/python/32/Python39/python.exe"
|
||||
- id: "3.10"
|
||||
display_name: "32-bit Python 3.10"
|
||||
variables:
|
||||
PYTHON_BINARY: "C:/python/32/Python310/python.exe"
|
||||
- id: "3.11"
|
||||
display_name: "32-bit Python 3.11"
|
||||
variables:
|
||||
PYTHON_BINARY: "C:/python/32/Python311/python.exe"
|
||||
- id: "3.12"
|
||||
display_name: "32-bit Python 3.12"
|
||||
variables:
|
||||
PYTHON_BINARY: "C:/python/32/Python312/python.exe"
|
||||
- id: "3.13"
|
||||
display_name: "32-bit Python 3.13"
|
||||
variables:
|
||||
PYTHON_BINARY: "C:/python/32/Python313/python.exe"
|
||||
|
||||
# Choice of mod_wsgi version
|
||||
- id: mod-wsgi-version
|
||||
display_name: "mod_wsgi version"
|
||||
values:
|
||||
- id: "4"
|
||||
display_name: "mod_wsgi 4.x"
|
||||
variables:
|
||||
MOD_WSGI_VERSION: "4"
|
||||
|
||||
# Run with test commands disabled on server?
|
||||
- id: disableTestCommands
|
||||
display_name: Disable test commands
|
||||
values:
|
||||
- id: disabled
|
||||
display_name: disabled
|
||||
variables:
|
||||
DISABLE_TEST_COMMANDS: "1"
|
||||
|
||||
# Generate coverage report?
|
||||
- id: coverage
|
||||
display_name: "Coverage"
|
||||
values:
|
||||
- id: "coverage"
|
||||
display_name: "Coverage"
|
||||
tags: ["coverage_tag"]
|
||||
variables:
|
||||
COVERAGE: "coverage"
|
||||
|
||||
- id: serverless
|
||||
display_name: "Serverless"
|
||||
values:
|
||||
- id: "enabled"
|
||||
display_name: "Serverless"
|
||||
variables:
|
||||
test_serverless: true
|
||||
batchtime: 10080 # 7 days
|
||||
|
||||
buildvariants:
|
||||
# Server Tests for RHEL8.
|
||||
- name: test-rhel8-py3.9-auth-ssl-cov
|
||||
@ -3530,6 +3426,71 @@ buildvariants:
|
||||
expansions:
|
||||
PYTHON_BINARY: /opt/python/3.13/bin/python3
|
||||
|
||||
# Mod_wsgi tests.
|
||||
- name: mod_wsgi-ubuntu-22-py3.9
|
||||
tasks:
|
||||
- name: mod-wsgi-standalone
|
||||
- name: mod-wsgi-replica-set
|
||||
- name: mod-wsgi-embedded-mode-standalone
|
||||
- name: mod-wsgi-embedded-mode-replica-set
|
||||
display_name: mod_wsgi Ubuntu-22 py3.9
|
||||
run_on:
|
||||
- ubuntu2204-small
|
||||
expansions:
|
||||
MOD_WSGI_VERSION: "4"
|
||||
PYTHON_BINARY: /opt/python/3.9/bin/python3
|
||||
- name: mod_wsgi-ubuntu-22-py3.13
|
||||
tasks:
|
||||
- name: mod-wsgi-standalone
|
||||
- name: mod-wsgi-replica-set
|
||||
- name: mod-wsgi-embedded-mode-standalone
|
||||
- name: mod-wsgi-embedded-mode-replica-set
|
||||
display_name: mod_wsgi Ubuntu-22 py3.13
|
||||
run_on:
|
||||
- ubuntu2204-small
|
||||
expansions:
|
||||
MOD_WSGI_VERSION: "4"
|
||||
PYTHON_BINARY: /opt/python/3.13/bin/python3
|
||||
|
||||
# Disable test commands variants.
|
||||
- name: disable-test-commands-rhel8-py3.9
|
||||
tasks:
|
||||
- name: .latest
|
||||
display_name: Disable test commands RHEL8 py3.9
|
||||
run_on:
|
||||
- rhel87-small
|
||||
expansions:
|
||||
AUTH: auth
|
||||
SSL: ssl
|
||||
DISABLE_TEST_COMMANDS: "1"
|
||||
PYTHON_BINARY: /opt/python/3.9/bin/python3
|
||||
|
||||
# Serverless variants.
|
||||
- name: serverless-rhel8-py3.9
|
||||
tasks:
|
||||
- name: serverless_task_group
|
||||
display_name: Serverless RHEL8 py3.9
|
||||
run_on:
|
||||
- rhel87-small
|
||||
batchtime: 10080
|
||||
expansions:
|
||||
test_serverless: "true"
|
||||
AUTH: auth
|
||||
SSL: ssl
|
||||
PYTHON_BINARY: /opt/python/3.9/bin/python3
|
||||
- name: serverless-rhel8-py3.13
|
||||
tasks:
|
||||
- name: serverless_task_group
|
||||
display_name: Serverless RHEL8 py3.13
|
||||
run_on:
|
||||
- rhel87-small
|
||||
batchtime: 10080
|
||||
expansions:
|
||||
test_serverless: "true"
|
||||
AUTH: auth
|
||||
SSL: ssl
|
||||
PYTHON_BINARY: /opt/python/3.13/bin/python3
|
||||
|
||||
- matrix_name: "tests-fips"
|
||||
matrix_spec:
|
||||
platform:
|
||||
@ -3562,16 +3523,6 @@ buildvariants:
|
||||
tasks:
|
||||
- ".5.0"
|
||||
|
||||
# enableTestCommands=0 tests on RHEL 8.4 (x86_64) with Python 3.9.
|
||||
- matrix_name: "test-disableTestCommands"
|
||||
matrix_spec:
|
||||
platform: rhel8
|
||||
disableTestCommands: "*"
|
||||
python-version: "3.9"
|
||||
display_name: "Disable test commands ${python-version} ${platform}"
|
||||
tasks:
|
||||
- ".latest"
|
||||
|
||||
- matrix_name: "test-search-index-helpers"
|
||||
matrix_spec:
|
||||
platform: rhel8
|
||||
@ -3580,18 +3531,6 @@ buildvariants:
|
||||
tasks:
|
||||
- name: "test_atlas_task_group_search_indexes"
|
||||
|
||||
- matrix_name: "tests-mod-wsgi"
|
||||
matrix_spec:
|
||||
platform: ubuntu-22.04
|
||||
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
||||
mod-wsgi-version: "*"
|
||||
display_name: "${mod-wsgi-version} ${python-version} ${platform}"
|
||||
tasks:
|
||||
- name: "mod-wsgi-standalone"
|
||||
- name: "mod-wsgi-replica-set"
|
||||
- name: "mod-wsgi-embedded-mode-standalone"
|
||||
- name: "mod-wsgi-embedded-mode-replica-set"
|
||||
|
||||
- matrix_name: "mockupdb-tests"
|
||||
matrix_spec:
|
||||
platform: rhel8
|
||||
@ -3630,16 +3569,6 @@ buildvariants:
|
||||
tasks:
|
||||
- name: "atlas-connect"
|
||||
|
||||
- matrix_name: "serverless"
|
||||
matrix_spec:
|
||||
platform: rhel8
|
||||
python-version: "*"
|
||||
auth-ssl: auth-ssl
|
||||
serverless: "enabled"
|
||||
display_name: "${serverless} ${python-version} ${platform}"
|
||||
tasks:
|
||||
- "serverless_task_group"
|
||||
|
||||
# OCSP test matrix.
|
||||
- name: ocsp-test-rhel8-v4.4-py3.9
|
||||
tasks:
|
||||
|
||||
@ -54,6 +54,7 @@ HOSTS["win64"] = Host("win64", "windows-64-vsMulti-small", "Win64")
|
||||
HOSTS["win32"] = Host("win32", "windows-64-vsMulti-small", "Win32")
|
||||
HOSTS["macos"] = Host("macos", "macos-14", "macOS")
|
||||
HOSTS["macos-arm64"] = Host("macos-arm64", "macos-14-arm64", "macOS Arm64")
|
||||
HOSTS["ubuntu22"] = Host("ubuntu22", "ubuntu2204-small", "Ubuntu-22")
|
||||
|
||||
|
||||
##############
|
||||
@ -102,7 +103,7 @@ def get_python_binary(python: str, host: str) -> str:
|
||||
python = python.replace(".", "")
|
||||
return f"{base}/Python{python}/python.exe"
|
||||
|
||||
if host == "rhel8":
|
||||
if host in ["rhel8", "ubuntu22"]:
|
||||
return f"/opt/python/{python}/bin/python3"
|
||||
|
||||
if host in ["macos", "macos-arm64"]:
|
||||
@ -558,10 +559,57 @@ def generate_atlas_data_lake_variants():
|
||||
return variants
|
||||
|
||||
|
||||
def generate_mod_wsgi_variants():
|
||||
variants = []
|
||||
host = "ubuntu22"
|
||||
tasks = [
|
||||
"mod-wsgi-standalone",
|
||||
"mod-wsgi-replica-set",
|
||||
"mod-wsgi-embedded-mode-standalone",
|
||||
"mod-wsgi-embedded-mode-replica-set",
|
||||
]
|
||||
expansions = dict(MOD_WSGI_VERSION="4")
|
||||
for python in MIN_MAX_PYTHON:
|
||||
display_name = get_display_name("mod_wsgi", host, python=python)
|
||||
variant = create_variant(
|
||||
tasks, display_name, host=host, python=python, expansions=expansions
|
||||
)
|
||||
variants.append(variant)
|
||||
return variants
|
||||
|
||||
|
||||
def generate_disable_test_commands_variants():
|
||||
host = "rhel8"
|
||||
expansions = dict(AUTH="auth", SSL="ssl", DISABLE_TEST_COMMANDS="1")
|
||||
python = CPYTHONS[0]
|
||||
display_name = get_display_name("Disable test commands", host, python=python)
|
||||
tasks = [".latest"]
|
||||
return [create_variant(tasks, display_name, host=host, python=python, expansions=expansions)]
|
||||
|
||||
|
||||
def generate_serverless_variants():
|
||||
host = "rhel8"
|
||||
batchtime = BATCHTIME_WEEK
|
||||
expansions = dict(test_serverless="true", AUTH="auth", SSL="ssl")
|
||||
tasks = ["serverless_task_group"]
|
||||
base_name = "Serverless"
|
||||
return [
|
||||
create_variant(
|
||||
tasks,
|
||||
get_display_name(base_name, host, python=python),
|
||||
host=host,
|
||||
python=python,
|
||||
expansions=expansions,
|
||||
batchtime=batchtime,
|
||||
)
|
||||
for python in MIN_MAX_PYTHON
|
||||
]
|
||||
|
||||
|
||||
##################
|
||||
# Generate Config
|
||||
##################
|
||||
|
||||
variants = generate_atlas_data_lake_variants()
|
||||
variants = generate_serverless_variants()
|
||||
# print(len(variants))
|
||||
generate_yaml(variants=variants)
|
||||
|
||||
@ -2,15 +2,14 @@ from __future__ import annotations
|
||||
|
||||
|
||||
def pytest_collection_modifyitems(items, config):
|
||||
sync_items = []
|
||||
async_items = [
|
||||
item
|
||||
for item in items
|
||||
if "asynchronous" in item.fspath.dirname or sync_items.append(item) # type: ignore[func-returns-value]
|
||||
]
|
||||
for item in async_items:
|
||||
if not any(item.iter_markers()):
|
||||
item.add_marker("default_async")
|
||||
for item in sync_items:
|
||||
if not any(item.iter_markers()):
|
||||
item.add_marker("default")
|
||||
# Markers that should overlap with the default markers.
|
||||
overlap_markers = ["async"]
|
||||
|
||||
for item in items:
|
||||
if "asynchronous" in item.fspath.dirname:
|
||||
default_marker = "default_async"
|
||||
else:
|
||||
default_marker = "default"
|
||||
markers = [m for m in item.iter_markers() if m not in overlap_markers]
|
||||
if not markers:
|
||||
item.add_marker(default_marker)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user