Skip to content

Commit ec84798

Browse files
committed
mongodb and pythonv ver handling
1 parent df4ba6e commit ec84798

File tree

2 files changed

+47
-38
lines changed

2 files changed

+47
-38
lines changed

.evergreen/generated_configs/tasks.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -723,7 +723,7 @@ tasks:
723723
tags: [doctests]
724724

725725
# Enterprise auth tests
726-
- name: test-enterprise-auth-3.9
726+
- name: test-enterprise-auth-python3.9
727727
commands:
728728
- func: run server
729729
vars:
@@ -737,7 +737,7 @@ tasks:
737737
AUTH: auth
738738
PYTHON_VERSION: "3.9"
739739
tags: [enterprise_auth]
740-
- name: test-enterprise-auth-3.13
740+
- name: test-enterprise-auth-python3.13
741741
commands:
742742
- func: run server
743743
vars:

.evergreen/scripts/generate_config.py

Lines changed: 45 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -180,17 +180,14 @@ def get_versions_until(max_version: str) -> list[str]:
180180
return versions
181181

182182

183-
def get_display_name(base: str, host: Host | None = None, **kwargs) -> str:
184-
"""Get the display name of a variant."""
183+
def get_common_name(base: str, sep: str, **kwargs) -> str:
185184
display_name = base
186-
if host is not None:
187-
display_name += f" {host.display_name}"
188185
version = kwargs.pop("VERSION", None)
189186
version = version or kwargs.pop("version", None)
190187
if version:
191188
if version not in ["rapid", "latest"]:
192189
version = f"v{version}"
193-
display_name = f"{display_name} {version}"
190+
display_name = f"{display_name}{sep}{version}"
194191
for key, value in kwargs.items():
195192
name = value
196193
if key.lower() == "python":
@@ -202,10 +199,22 @@ def get_display_name(base: str, host: Host | None = None, **kwargs) -> str:
202199
name = DISPLAY_LOOKUP[key.lower()][value]
203200
else:
204201
continue
205-
display_name = f"{display_name} {name}"
202+
display_name = f"{display_name}{sep}{name}"
206203
return display_name
207204

208205

206+
def get_variant_name(base: str, host: Host | None = None, **kwargs) -> str:
207+
"""Get the display name of a variant."""
208+
display_name = base
209+
if host is not None:
210+
display_name += f" {host.display_name}"
211+
return get_common_name(display_name, " ", **kwargs)
212+
213+
214+
def get_task_name(base: str, **kwargs):
215+
return get_common_name(base, "-", **kwargs).lower()
216+
217+
209218
def zip_cycle(*iterables, empty_default=None):
210219
"""Get all combinations of the inputs, cycling over the shorter list(s)."""
211220
cycles = [cycle(i) for i in iterables]
@@ -245,7 +254,7 @@ def create_ocsp_variants() -> list[BuildVariant]:
245254
host = DEFAULT_HOST
246255
variant = create_variant(
247256
[".ocsp"],
248-
get_display_name(base_display, host, version=version, python=python),
257+
get_variant_name(base_display, host, version=version, python=python),
249258
python=python,
250259
version=version,
251260
host=host,
@@ -261,7 +270,7 @@ def create_ocsp_variants() -> list[BuildVariant]:
261270
python = CPYTHONS[0] if version == "4.4" else CPYTHONS[-1]
262271
variant = create_variant(
263272
[".ocsp-rsa !.ocsp-staple"],
264-
get_display_name(base_display, host, version=version, python=python),
273+
get_variant_name(base_display, host, version=version, python=python),
265274
python=python,
266275
version=version,
267276
host=host,
@@ -283,7 +292,7 @@ def create_server_variants() -> list[BuildVariant]:
283292
for python, c_ext in product([*MIN_MAX_PYTHON, PYPYS[-1]], C_EXTS):
284293
expansions = dict(COVERAGE="coverage")
285294
handle_c_ext(c_ext, expansions)
286-
display_name = get_display_name(base_display_name, host, python=python, **expansions)
295+
display_name = get_variant_name(base_display_name, host, python=python, **expansions)
287296
variant = create_variant(
288297
[f".{t} .sync_async" for t in TOPOLOGIES],
289298
display_name,
@@ -297,7 +306,7 @@ def create_server_variants() -> list[BuildVariant]:
297306
# Test the rest of the pythons.
298307
for python in CPYTHONS[1:-1] + PYPYS[:-1]:
299308
display_name = f"Test {host}"
300-
display_name = get_display_name(base_display_name, host, python=python)
309+
display_name = get_variant_name(base_display_name, host, python=python)
301310
variant = create_variant(
302311
[f"{t} .sync_async" for t in SUB_TASKS],
303312
display_name,
@@ -317,7 +326,7 @@ def create_server_variants() -> list[BuildVariant]:
317326
for version in get_versions_from("6.0"):
318327
tasks.extend(f"{t} .{version} !.sync_async" for t in SUB_TASKS)
319328
host = HOSTS[host_name]
320-
display_name = get_display_name(base_display_name, host, python=python)
329+
display_name = get_variant_name(base_display_name, host, python=python)
321330
variant = create_variant(tasks, display_name, python=python, host=host)
322331
variants.append(variant)
323332

@@ -333,7 +342,7 @@ def create_free_threaded_variants() -> list[BuildVariant]:
333342
tasks = [".free-threading"]
334343
host = HOSTS[host_name]
335344
python = "3.13t"
336-
display_name = get_display_name("Free-threaded", host, python=python)
345+
display_name = get_variant_name("Free-threaded", host, python=python)
337346
variant = create_variant(tasks, display_name, python=python, host=host)
338347
variants.append(variant)
339348
return variants
@@ -358,7 +367,7 @@ def get_encryption_expansions(encryption):
358367
encryptions = ["Encryption", "Encryption crypt_shared", "Encryption PyOpenSSL"]
359368
for encryption, python in product(encryptions, [*MIN_MAX_PYTHON, PYPYS[-1]]):
360369
expansions = get_encryption_expansions(encryption)
361-
display_name = get_display_name(encryption, host, python=python, **expansions)
370+
display_name = get_variant_name(encryption, host, python=python, **expansions)
362371
variant = create_variant(
363372
[f"{t} .sync_async" for t in SUB_TASKS],
364373
display_name,
@@ -373,7 +382,7 @@ def get_encryption_expansions(encryption):
373382
# Test the rest of the pythons on linux for all server versions.
374383
for encryption, python, task in zip_cycle(encryptions, CPYTHONS[1:-1] + PYPYS[:-1], SUB_TASKS):
375384
expansions = get_encryption_expansions(encryption)
376-
display_name = get_display_name(encryption, host, python=python, **expansions)
385+
display_name = get_variant_name(encryption, host, python=python, **expansions)
377386
variant = create_variant(
378387
[f"{task} .sync_async"],
379388
display_name,
@@ -389,7 +398,7 @@ def get_encryption_expansions(encryption):
389398
for host_name, encryption, python in product(["macos", "win64"], encryptions, MIN_MAX_PYTHON):
390399
host = HOSTS[host_name]
391400
expansions = get_encryption_expansions(encryption)
392-
display_name = get_display_name(encryption, host, python=python, **expansions)
401+
display_name = get_variant_name(encryption, host, python=python, **expansions)
393402
variant = create_variant(
394403
task_names,
395404
display_name,
@@ -424,7 +433,7 @@ def create_compression_variants():
424433
handle_c_ext(c_ext, expansions)
425434
base_name = f"Compression {compressor}"
426435
python = CPYTHONS[ind % len(CPYTHONS)]
427-
display_name = get_display_name(base_name, host, python=python, **expansions)
436+
display_name = get_variant_name(base_name, host, python=python, **expansions)
428437
variant = create_variant(
429438
task_names[compressor],
430439
display_name,
@@ -439,7 +448,7 @@ def create_compression_variants():
439448
expansions = dict(COMPRESSORS=compressor)
440449
handle_c_ext(c_ext, expansions)
441450
base_name = f"Compression {compressor}"
442-
display_name = get_display_name(base_name, host, python=python, **expansions)
451+
display_name = get_variant_name(base_name, host, python=python, **expansions)
443452
variant = create_variant(
444453
task_names[compressor],
445454
display_name,
@@ -455,7 +464,7 @@ def create_compression_variants():
455464
def create_enterprise_auth_variants():
456465
variants = []
457466
for host in [HOSTS["macos"], HOSTS["win64"], DEFAULT_HOST]:
458-
display_name = get_display_name("Auth Enterprise", host)
467+
display_name = get_variant_name("Auth Enterprise", host)
459468
if host == DEFAULT_HOST:
460469
tags = [".enterprise_auth"]
461470
else:
@@ -483,7 +492,7 @@ def create_pyopenssl_variants():
483492
else:
484493
host = DEFAULT_HOST
485494

486-
display_name = get_display_name(base_name, host, python=python)
495+
display_name = get_variant_name(base_name, host, python=python)
487496
variant = create_variant(
488497
[f".replica_set .{auth} .{ssl} .sync_async", f".7.0 .{auth} .{ssl} .sync_async"],
489498
display_name,
@@ -512,7 +521,7 @@ def create_storage_engine_variants():
512521
tasks = [f".standalone .{v} .noauth .nossl .sync_async" for v in versions] + [
513522
f".replica_set .{v} .noauth .nossl .sync_async" for v in versions
514523
]
515-
display_name = get_display_name(f"Storage {engine}", host, python=python)
524+
display_name = get_variant_name(f"Storage {engine}", host, python=python)
516525
variant = create_variant(
517526
tasks, display_name, host=host, python=python, expansions=expansions
518527
)
@@ -543,7 +552,7 @@ def create_stable_api_variants():
543552
# clients created in the test suite.
544553
expansions["ORCHESTRATION_FILE"] = "versioned-api-testing.json"
545554
base_display_name = f"Stable API {test_type}"
546-
display_name = get_display_name(base_display_name, host, python=python, **expansions)
555+
display_name = get_variant_name(base_display_name, host, python=python, **expansions)
547556
variant = create_variant(
548557
tasks, display_name, host=host, python=python, tags=tags, expansions=expansions
549558
)
@@ -558,7 +567,7 @@ def create_green_framework_variants():
558567
host = DEFAULT_HOST
559568
for python, framework in product([CPYTHONS[0], CPYTHONS[-1]], ["eventlet", "gevent"]):
560569
expansions = dict(GREEN_FRAMEWORK=framework, AUTH="auth", SSL="ssl")
561-
display_name = get_display_name(f"Green {framework.capitalize()}", host, python=python)
570+
display_name = get_variant_name(f"Green {framework.capitalize()}", host, python=python)
562571
variant = create_variant(
563572
tasks, display_name, host=host, python=python, expansions=expansions
564573
)
@@ -573,7 +582,7 @@ def create_no_c_ext_variants():
573582
tasks = [f".{topology} .noauth .nossl !.sync_async"]
574583
expansions = dict()
575584
handle_c_ext(C_EXTS[0], expansions)
576-
display_name = get_display_name("No C Ext", host, python=python)
585+
display_name = get_variant_name("No C Ext", host, python=python)
577586
variant = create_variant(
578587
tasks, display_name, host=host, python=python, expansions=expansions
579588
)
@@ -586,7 +595,7 @@ def create_atlas_data_lake_variants():
586595
host = HOSTS["ubuntu22"]
587596
for python in MIN_MAX_PYTHON:
588597
tasks = [".atlas_data_lake"]
589-
display_name = get_display_name("Atlas Data Lake", host, python=python)
598+
display_name = get_variant_name("Atlas Data Lake", host, python=python)
590599
variant = create_variant(tasks, display_name, host=host, python=python)
591600
variants.append(variant)
592601
return variants
@@ -598,7 +607,7 @@ def create_mod_wsgi_variants():
598607
tasks = [".mod_wsgi"]
599608
expansions = dict(MOD_WSGI_VERSION="4")
600609
for python in MIN_MAX_PYTHON:
601-
display_name = get_display_name("mod_wsgi", host, python=python)
610+
display_name = get_variant_name("mod_wsgi", host, python=python)
602611
variant = create_variant(
603612
tasks, display_name, host=host, python=python, expansions=expansions
604613
)
@@ -610,7 +619,7 @@ def create_disable_test_commands_variants():
610619
host = DEFAULT_HOST
611620
expansions = dict(AUTH="auth", SSL="ssl", DISABLE_TEST_COMMANDS="1")
612621
python = CPYTHONS[0]
613-
display_name = get_display_name("Disable test commands", host, python=python)
622+
display_name = get_variant_name("Disable test commands", host, python=python)
614623
tasks = [".latest .sync_async"]
615624
return [create_variant(tasks, display_name, host=host, python=python, expansions=expansions)]
616625

@@ -623,7 +632,7 @@ def create_serverless_variants():
623632
return [
624633
create_variant(
625634
tasks,
626-
get_display_name(base_name, host, python=python),
635+
get_variant_name(base_name, host, python=python),
627636
host=host,
628637
python=python,
629638
batchtime=batchtime,
@@ -643,7 +652,7 @@ def create_oidc_auth_variants():
643652
variants.append(
644653
create_variant(
645654
tasks,
646-
get_display_name("Auth OIDC", host),
655+
get_variant_name("Auth OIDC", host),
647656
host=host,
648657
batchtime=BATCHTIME_WEEK,
649658
)
@@ -657,7 +666,7 @@ def create_search_index_variants():
657666
return [
658667
create_variant(
659668
[".search_index"],
660-
get_display_name("Search Index Helpers", host, python=python),
669+
get_variant_name("Search Index Helpers", host, python=python),
661670
python=python,
662671
host=host,
663672
)
@@ -670,7 +679,7 @@ def create_mockupdb_variants():
670679
return [
671680
create_variant(
672681
[".mockupdb"],
673-
get_display_name("MockupDB", host, python=python),
682+
get_variant_name("MockupDB", host, python=python),
674683
python=python,
675684
host=host,
676685
)
@@ -683,7 +692,7 @@ def create_doctests_variants():
683692
return [
684693
create_variant(
685694
[".doctests"],
686-
get_display_name("Doctests", host, python=python),
695+
get_variant_name("Doctests", host, python=python),
687696
python=python,
688697
host=host,
689698
)
@@ -695,7 +704,7 @@ def create_atlas_connect_variants():
695704
return [
696705
create_variant(
697706
[".atlas_connect"],
698-
get_display_name("Atlas connect", host, python=python),
707+
get_variant_name("Atlas connect", host, python=python),
699708
python=python,
700709
host=host,
701710
)
@@ -723,7 +732,7 @@ def create_aws_auth_variants():
723732
host = HOSTS[host_name]
724733
variant = create_variant(
725734
tasks,
726-
get_display_name("Auth AWS", host, python=python),
735+
get_variant_name("Auth AWS", host, python=python),
727736
host=host,
728737
python=python,
729738
expansions=expansions,
@@ -745,7 +754,7 @@ def create_alternative_hosts_variants():
745754
variants.append(
746755
create_variant(
747756
[".5.0 .standalone !.sync_async"],
748-
get_display_name("OpenSSL 1.0.2", host, python=CPYTHONS[0]),
757+
get_variant_name("OpenSSL 1.0.2", host, python=CPYTHONS[0]),
749758
host=host,
750759
python=CPYTHONS[0],
751760
batchtime=batchtime,
@@ -759,7 +768,7 @@ def create_alternative_hosts_variants():
759768
variants.append(
760769
create_variant(
761770
[".6.0 .standalone !.sync_async"],
762-
display_name=get_display_name("Other hosts", host),
771+
display_name=get_variant_name("Other hosts", host),
763772
batchtime=batchtime,
764773
host=host,
765774
expansions=expansions,
@@ -962,7 +971,7 @@ def create_enterprise_auth_tasks():
962971
server_func = FunctionCall(func="run server", vars=vars)
963972
assume_func = FunctionCall(func="assume ec2 role")
964973
test_func = FunctionCall(func="run tests", vars=vars)
965-
task_name = f"test-enterprise-auth-{python}"
974+
task_name = get_task_name("test-enterprise-auth", python=python)
966975
tags = ["enterprise_auth"]
967976
if python in PYPYS:
968977
tags += ["pypy"]

0 commit comments

Comments
 (0)