PYTHON-4889 Use shrub.py for green framework tests (#1951)

This commit is contained in:
Steven Silvester 2024-10-21 07:24:39 -05:00 committed by GitHub
parent 849ed7970f
commit 7e83c8c67f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 61 additions and 29 deletions

View File

@ -2247,19 +2247,6 @@ axes:
variables:
MOD_WSGI_VERSION: "4"
# Choice of Python async framework
- id: green-framework
display_name: "Green Framework"
values:
- id: "eventlet"
display_name: "Eventlet"
variables:
GREEN_FRAMEWORK: "eventlet"
- id: "gevent"
display_name: "Gevent"
variables:
GREEN_FRAMEWORK: "gevent"
# Install and use the driver's C-extensions?
- id: c-extensions
display_name: "C Extensions"
@ -3412,6 +3399,52 @@ buildvariants:
PYTHON_BINARY: /opt/python/3.13/bin/python3
tags: [versionedApi_tag]
# Green framework tests.
- name: eventlet-rhel8-py3.9
tasks:
- name: .standalone
display_name: Eventlet RHEL8 py3.9
run_on:
- rhel87-small
expansions:
GREEN_FRAMEWORK: eventlet
AUTH: auth
SSL: ssl
PYTHON_BINARY: /opt/python/3.9/bin/python3
- name: gevent-rhel8-py3.9
tasks:
- name: .standalone
display_name: Gevent RHEL8 py3.9
run_on:
- rhel87-small
expansions:
GREEN_FRAMEWORK: gevent
AUTH: auth
SSL: ssl
PYTHON_BINARY: /opt/python/3.9/bin/python3
- name: eventlet-rhel8-py3.12
tasks:
- name: .standalone
display_name: Eventlet RHEL8 py3.12
run_on:
- rhel87-small
expansions:
GREEN_FRAMEWORK: eventlet
AUTH: auth
SSL: ssl
PYTHON_BINARY: /opt/python/3.12/bin/python3
- name: gevent-rhel8-py3.12
tasks:
- name: .standalone
display_name: Gevent RHEL8 py3.12
run_on:
- rhel87-small
expansions:
GREEN_FRAMEWORK: gevent
AUTH: auth
SSL: ssl
PYTHON_BINARY: /opt/python/3.12/bin/python3
- matrix_name: "tests-fips"
matrix_spec:
platform:
@ -3460,21 +3493,6 @@ buildvariants:
- ".4.2"
- ".4.0"
- matrix_name: "tests-python-version-green-framework-rhel8"
matrix_spec:
platform: rhel8
python-version: "*"
green-framework: "*"
auth-ssl: "*"
exclude_spec:
# Don't test green frameworks on these Python versions.
- platform: rhel8
python-version: ["pypy3.9", "pypy3.10", "3.13"]
green-framework: "*"
auth-ssl: "*"
display_name: "${green-framework} ${python-version} ${platform} ${auth-ssl}"
tasks: *all-server-versions
- matrix_name: "tests-python-version-supports-openssl-102-test-ssl"
matrix_spec:
platform: rhel7

View File

@ -481,10 +481,24 @@ def create_versioned_api_tests():
return variants
def create_green_framework_variants():
variants = []
tasks = [".standalone"]
host = "rhel8"
for python, framework in product([CPYTHONS[0], CPYTHONS[-2]], ["eventlet", "gevent"]):
expansions = dict(GREEN_FRAMEWORK=framework, AUTH="auth", SSL="ssl")
display_name = get_display_name(f"{framework.capitalize()}", host, python=python)
variant = create_variant(
tasks, display_name, host=host, python=python, expansions=expansions
)
variants.append(variant)
return variants
##################
# Generate Config
##################
variants = create_versioned_api_tests()
variants = create_green_framework_variants()
# print(len(variants))
generate_yaml(variants=variants)