Skip to content

Commit 87e76bd

Browse files
committed
PYTHON-2341 Migrate testing to Amazon1
Also fixes PYTHON-2008, testing mod_wsgi with newer Python versions. Also adds PyPy 3.7 to the test matrix.
1 parent 99a4f28 commit 87e76bd

File tree

1 file changed

+48
-95
lines changed

1 file changed

+48
-95
lines changed

.evergreen/config.yml

Lines changed: 48 additions & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -1786,6 +1786,10 @@ axes:
17861786
display_name: "PyPy 3.6"
17871787
variables:
17881788
PYTHON_BINARY: "/opt/python/pypy3.6/bin/pypy3"
1789+
- id: "pypy3.7"
1790+
display_name: "PyPy 3.7"
1791+
variables:
1792+
PYTHON_BINARY: "/opt/python/pypy3.7/bin/pypy3"
17891793
- id: "system-python3"
17901794
display_name: "Python3"
17911795
variables:
@@ -2099,16 +2103,15 @@ buildvariants:
20992103
- ".4.4"
21002104
- ".4.2"
21012105

2102-
- matrix_name: "tests-python-version-rhel62-test-ssl"
2106+
- matrix_name: "tests-python-version-amazon1-test-ssl"
21032107
matrix_spec:
2104-
platform: rhel62
2105-
# RHEL 6.2 does not support Python 3.7.x and later.
2106-
python-version: &rhel62-pythons ["3.6", "pypy3.6"]
2108+
platform: awslinux
2109+
python-version: &amazon1-pythons ["3.6", "3.7", "3.8", "3.9", "pypy3.6", "pypy3.7"]
21072110
auth: "*"
21082111
ssl: "*"
21092112
coverage: "*"
21102113
exclude_spec:
2111-
- platform: rhel62
2114+
- platform: awslinux
21122115
python-version: "*"
21132116
auth: "noauth"
21142117
ssl: "ssl"
@@ -2139,7 +2142,7 @@ buildvariants:
21392142
- matrix_name: "tests-pyopenssl-pypy"
21402143
matrix_spec:
21412144
platform: debian92
2142-
python-version: ["pypy3.6"]
2145+
python-version: ["pypy3.6", "pypy3.7"]
21432146
auth: "auth"
21442147
ssl: "ssl"
21452148
pyopenssl: "*"
@@ -2170,11 +2173,10 @@ buildvariants:
21702173
tasks:
21712174
- '.replica_set'
21722175

2173-
- matrix_name: "tests-python-version-rhel62-test-encryption"
2176+
- matrix_name: "tests-python-version-amazon1-test-encryption"
21742177
matrix_spec:
2175-
platform: rhel62
2176-
# RHEL 6.2 does not support Python 3.7.x and later.
2177-
python-version: ["3.6"]
2178+
platform: awslinux
2179+
python-version: ["3.6", "3.7", "3.8", "3.9"]
21782180
auth-ssl: noauth-nossl
21792181
# TODO: dependency error for 'coverage-report' task:
21802182
# dependency tests-python-version-rhel62-test-encryption_.../test-2.6-standalone is not present in the project config
@@ -2186,56 +2188,40 @@ buildvariants:
21862188
- matrix_name: "tests-pypy-debian-test-encryption"
21872189
matrix_spec:
21882190
platform: debian92
2189-
python-version: ["pypy3.6"]
2191+
python-version: ["pypy3.6", "pypy3.7"]
21902192
auth-ssl: noauth-nossl
21912193
encryption: "*"
21922194
display_name: "Encryption ${python-version} ${platform} ${auth-ssl}"
21932195
tasks: *encryption-server-versions
21942196

2195-
- matrix_name: "tests-python-version-rhel62-without-c-extensions"
2197+
- matrix_name: "tests-python-version-amazon1-without-c-extensions"
21962198
matrix_spec:
2197-
platform: rhel62
2198-
python-version: *rhel62-pythons
2199+
platform: awslinux
2200+
python-version: *amazon1-pythons
21992201
c-extensions: without-c-extensions
22002202
auth-ssl: noauth-nossl
22012203
coverage: "*"
22022204
exclude_spec:
22032205
# These interpreters are always tested without extensions.
2204-
- platform: rhel62
2205-
python-version: ["pypy3.6"]
2206+
- platform: awslinux
2207+
python-version: ["pypy3.6", "pypy3.7"]
22062208
c-extensions: "*"
22072209
auth-ssl: "*"
22082210
coverage: "*"
22092211
display_name: "${c-extensions} ${python-version} ${platform} ${auth} ${ssl} ${coverage}"
22102212
tasks: *all-server-versions
22112213

2212-
- matrix_name: "tests-python-version-ubuntu1604-without-c-extensions"
2213-
matrix_spec:
2214-
platform: ubuntu-16.04
2215-
python-version: &openssl-102-plus-pythons ["3.7", "3.8", "3.9"]
2216-
c-extensions: without-c-extensions
2217-
auth-ssl: noauth-nossl
2218-
display_name: "${c-extensions} ${python-version} ${platform} ${auth} ${ssl} ${coverage}"
2219-
tasks:
2220-
- ".latest"
2221-
- ".4.4"
2222-
- ".4.2"
2223-
- ".4.0"
2224-
- ".3.6"
2225-
- ".3.4"
2226-
- ".3.2"
2227-
22282214
- matrix_name: "tests-python-version-ubuntu16-compression"
22292215
matrix_spec:
22302216
# Ubuntu 16.04 images have libsnappy-dev installed, and provides OpenSSL 1.0.2 for testing Python 3.7
22312217
platform: ubuntu-16.04
2232-
python-version: ["3.6", "3.7", "3.8", "3.9", "pypy3.6"]
2218+
python-version: ["3.6", "3.7", "3.8", "3.9", "pypy3.6", "pypy3.7"]
22332219
c-extensions: "*"
22342220
compression: "*"
22352221
exclude_spec:
22362222
# These interpreters are always tested without extensions.
22372223
- platform: ubuntu-16.04
2238-
python-version: ["pypy3.6"]
2224+
python-version: ["pypy3.6", "pypy3.7"]
22392225
c-extensions: "with-c-extensions"
22402226
compression: "*"
22412227
# PYTHON-2365 Some tests fail with CPython 3.8+ and python-snappy
@@ -2259,16 +2245,16 @@ buildvariants:
22592245
- "test-4.0-standalone"
22602246
- "test-3.6-standalone"
22612247

2262-
- matrix_name: "tests-python-version-green-framework-rhel62"
2248+
- matrix_name: "tests-python-version-green-framework-amazon1"
22632249
matrix_spec:
2264-
platform: rhel62
2265-
python-version: *rhel62-pythons
2250+
platform: awslinux
2251+
python-version: *amazon1-pythons
22662252
green-framework: "*"
22672253
auth-ssl: "*"
22682254
exclude_spec:
22692255
# Don't test green frameworks on these Python versions.
2270-
- platform: rhel62
2271-
python-version: ["pypy3.6"]
2256+
- platform: awslinux
2257+
python-version: ["pypy3.6", "pypy3.7"]
22722258
green-framework: "*"
22732259
auth-ssl: "*"
22742260
display_name: "${green-framework} ${python-version} ${platform} ${auth-ssl}"
@@ -2290,34 +2276,10 @@ buildvariants:
22902276
display_name: "${platform} ${python-version-windows-32} ${auth-ssl}"
22912277
tasks: *all-server-versions
22922278

2293-
- matrix_name: "tests-python-version-requires-openssl-102-plus-test-ssl"
2294-
matrix_spec:
2295-
platform: ubuntu-16.04
2296-
python-version: *openssl-102-plus-pythons
2297-
auth-ssl: "*"
2298-
display_name: "${python-version} OpenSSL 1.0.2 ${platform} ${auth-ssl}"
2299-
tasks:
2300-
- ".latest"
2301-
- ".4.4"
2302-
- ".4.2"
2303-
- ".4.0"
2304-
- ".3.6"
2305-
- ".3.4"
2306-
- ".3.2"
2307-
2308-
- matrix_name: "tests-python-version-requires-openssl-102-plus-test-encryption"
2309-
matrix_spec:
2310-
platform: ubuntu-16.04
2311-
python-version: *openssl-102-plus-pythons
2312-
auth-ssl: "noauth-nossl"
2313-
encryption: "*"
2314-
display_name: "Encryption ${python-version} ${platform} ${auth-ssl}"
2315-
tasks: *encryption-server-versions
2316-
23172279
- matrix_name: "tests-python-version-supports-openssl-110-test-ssl"
23182280
matrix_spec:
23192281
platform: debian92
2320-
python-version: *openssl-102-plus-pythons
2282+
python-version: *amazon1-pythons
23212283
auth-ssl: "*"
23222284
display_name: "${python-version} OpenSSL 1.1.0 ${platform} ${auth-ssl}"
23232285
tasks:
@@ -2332,16 +2294,16 @@ buildvariants:
23322294
display_name: "Encryption ${platform} ${python-version-windows} ${auth-ssl}"
23332295
tasks: *encryption-server-versions
23342296

2335-
# Storage engine tests on RHEL 6.2 (x86_64) with Python 3.6.
2297+
# Storage engine tests on Amazon1 (x86_64) with Python 3.6.
23362298
- matrix_name: "tests-storage-engines"
23372299
matrix_spec:
2338-
platform: rhel62
2300+
platform: awslinux
23392301
storage-engine: "*"
23402302
python-version: 3.6
23412303
display_name: "Storage ${storage-engine} ${python-version} ${platform}"
23422304
rules:
23432305
- if:
2344-
platform: rhel62
2306+
platform: awslinux
23452307
storage-engine: ["inmemory"]
23462308
python-version: "*"
23472309
then:
@@ -2355,7 +2317,7 @@ buildvariants:
23552317
- "test-3.2-standalone"
23562318
- if:
23572319
# MongoDB 4.2 drops support for MMAPv1
2358-
platform: rhel62
2320+
platform: awslinux
23592321
storage-engine: ["mmapv1"]
23602322
python-version: "*"
23612323
then:
@@ -2368,17 +2330,17 @@ buildvariants:
23682330
- "test-3.2-standalone"
23692331
- if:
23702332
# No need to test this on later server versions as it becomes the default
2371-
platform: rhel62
2333+
platform: awslinux
23722334
storage-engine: ["wiredtiger"]
23732335
python-version: "*"
23742336
then:
23752337
add_tasks:
23762338
- "test-3.0-standalone"
23772339

2378-
# enableTestCommands=0 tests on RHEL 6.2 (x86_64) with Python 3.6.
2340+
# enableTestCommands=0 tests on Amazon1 (x86_64) with Python 3.6.
23792341
- matrix_name: "test-disableTestCommands"
23802342
matrix_spec:
2381-
platform: rhel62
2343+
platform: awslinux
23822344
disableTestCommands: "*"
23832345
python-version: "3.6"
23842346
display_name: "Disable test commands ${python-version} ${platform}"
@@ -2387,8 +2349,8 @@ buildvariants:
23872349

23882350
- matrix_name: "test-linux-enterprise-auth"
23892351
matrix_spec:
2390-
platform: rhel62
2391-
python-version: *rhel62-pythons
2352+
platform: awslinux
2353+
python-version: *amazon1-pythons
23922354
auth: "auth"
23932355
display_name: "Enterprise ${auth} ${platform} ${python-version}"
23942356
tasks:
@@ -2405,31 +2367,30 @@ buildvariants:
24052367

24062368
- matrix_name: "tests-mod-wsgi"
24072369
matrix_spec:
2408-
platform: rhel62
2409-
# The toolchain doesn't currently include mod-wsgi
2410-
# built for CPython 3.8, mod-wsgi doesn't yet
2411-
# claim to support 3.9. Python 3.7+ won't build on rhel6
2412-
# and we need to do some work to migrate mod-wsgi testing
2413-
# to a different OS. For now we're stuck just testing with
2414-
# Python 3.6.
2415-
python-version: ["3.6"]
2370+
platform: awslinux
2371+
python-version: ["3.6", "3.7", "3.8", "3.9"]
24162372
mod-wsgi-version: "*"
2373+
exclude_spec:
2374+
# mod-wsgi 3.5 won't build against CPython 3.8+
2375+
- platform: awslinux
2376+
python-version: ["3.8", "3.9"]
2377+
mod-wsgi-version: "3"
24172378
display_name: "${mod-wsgi-version} ${python-version} ${platform}"
24182379
tasks:
24192380
- name: "mod-wsgi-standalone"
24202381
- name: "mod-wsgi-replica-set"
24212382

24222383
- matrix_name: "mockupdb-tests"
24232384
matrix_spec:
2424-
platform: rhel62
2385+
platform: awslinux
24252386
python-version: 3.6
24262387
display_name: "MockupDB Tests"
24272388
tasks:
24282389
- name: "mockupdb"
24292390

24302391
- matrix_name: "tests-doctests"
24312392
matrix_spec:
2432-
platform: rhel62
2393+
platform: awslinux
24332394
python-version: ["3.6"]
24342395
display_name: "Doctests ${python-version} ${platform}"
24352396
tasks:
@@ -2438,7 +2399,7 @@ buildvariants:
24382399
- name: "no-server"
24392400
display_name: "No server test"
24402401
run_on:
2441-
- rhel62-small
2402+
- amazon1-2018-test
24422403
tasks:
24432404
- name: "no-server"
24442405
expansions:
@@ -2455,16 +2416,8 @@ buildvariants:
24552416

24562417
- matrix_name: "atlas-connect"
24572418
matrix_spec:
2458-
platform: rhel62
2459-
python-version: *rhel62-pythons
2460-
display_name: "Atlas connect ${python-version} ${platform}"
2461-
tasks:
2462-
- name: "atlas-connect"
2463-
2464-
- matrix_name: "atlas-connect-openssl-102-plus"
2465-
matrix_spec:
2466-
platform: debian92
2467-
python-version: *openssl-102-plus-pythons
2419+
platform: awslinux
2420+
python-version: *amazon1-pythons
24682421
display_name: "Atlas connect ${python-version} ${platform}"
24692422
tasks:
24702423
- name: "atlas-connect"
@@ -2506,7 +2459,7 @@ buildvariants:
25062459
- matrix_name: "ocsp-test-pypy"
25072460
matrix_spec:
25082461
platform: debian92
2509-
python-version: ["pypy3.6"]
2462+
python-version: ["pypy3.6", "pypy3.7"]
25102463
mongodb-version: ["4.4", "latest"]
25112464
auth: "noauth"
25122465
ssl: "ssl"

0 commit comments

Comments
 (0)