Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
from shrub.v3.evg_command import EvgCommandType, s3_put
from shrub.v3.evg_task import EvgTask

from config_generator.components.funcs.install_uv import InstallUV
from config_generator.components.funcs.set_cache_dir import SetCacheDir
from config_generator.etc.function import Function
from config_generator.etc.utils import bash_exec


class CheckABICompliance(Function):
name = 'abi-compliance-check'
commands = [
commands = SetCacheDir.commands + [
bash_exec(
command_type=EvgCommandType.SETUP,
working_dir='mongoc',
Expand All @@ -19,7 +19,7 @@ class CheckABICompliance(Function):
command_type=EvgCommandType.TEST,
add_expansions_to_env=True,
working_dir='mongoc',
include_expansions_in_env=['MONGO_C_DRIVER_CACHE_DIR', 'UV_INSTALL_DIR'],
include_expansions_in_env=['MONGO_C_DRIVER_CACHE_DIR'],
script='.evergreen/scripts/abi-compliance-check.sh',
),
s3_put(
Expand Down Expand Up @@ -56,7 +56,6 @@ def tasks():
EvgTask(
name=CheckABICompliance.name,
commands=[
InstallUV.call(),
CheckABICompliance.call(),
],
)
Expand Down
23 changes: 10 additions & 13 deletions .evergreen/config_generator/components/c_std_compile.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
from shrub.v3.evg_command import EvgCommandType
from shrub.v3.evg_task import EvgTask, EvgTaskRef

from config_generator.components.funcs.install_uv import InstallUV
from config_generator.etc.distros import compiler_to_vars, find_large_distro, make_distro_str
from config_generator.etc.function import Function
from config_generator.etc.utils import bash_exec
Expand All @@ -14,7 +13,6 @@
# fmt: off
MATRIX = [
('rhel80', 'clang', None, [99, 11, 17, ]), # Clang 7.0
('ubuntu2004', 'clang-10', None, [99, 11, 17, 23]), # Clang 10.0 (max: C2x)
('rhel84', 'clang', None, [99, 11, 17, 23]), # Clang 11.0 (max: C2x)
('ubuntu2204', 'clang-12', None, [99, 11, 17, 23]), # Clang 12.0 (max: C2x)
('rhel90', 'clang', None, [99, 11, 17, 23]), # Clang 13.0 (max: C2x)
Expand All @@ -24,16 +22,15 @@
('rhel94', 'clang', None, [99, 11, 17, 23]), # Clang 17.0 (max: C2x)
('rhel95', 'clang', None, [99, 11, 17, 23]), # Clang 18.0 (max: C23)

('rhel7-latest', 'gcc', None, [99, 11, ]), # GCC 4.8 (max: C11)
('rhel80', 'gcc', None, [99, 11, 17, ]), # GCC 8.2 (max: C17)
('rhel84', 'gcc', None, [99, 11, 17, ]), # GCC 8.4 (max: C17)
('ubuntu2004', 'gcc-9', None, [99, 11, 17, 23]), # GCC 9.4 (max: C2x)
('debian11', 'gcc-10', None, [99, 11, 17, 23]), # GCC 10.2 (max: C2x)
('rhel90', 'gcc', None, [99, 11, 17, 23]), # GCC 11.2 (max: C2x)
('rhel92', 'gcc', None, [99, 11, 17, 23]), # GCC 11.3 (max: C2x)
('rhel94', 'gcc', None, [99, 11, 17, 23]), # GCC 11.4 (max: C2x)
('rhel95', 'gcc', None, [99, 11, 17, 23]), # GCC 11.5 (max: C2x)
('ubuntu2404', 'gcc-13', None, [99, 11, 17, 23]), # GCC 13.3 (max: C2x)
('rhel7-latest', 'gcc', None, [99, 11, ]), # GCC 4.8 (max: C11)
('rhel80', 'gcc', None, [99, 11, 17, ]), # GCC 8.2 (max: C17)
('rhel84', 'gcc', None, [99, 11, 17, ]), # GCC 8.4 (max: C17)
('debian11-latest', 'gcc-10', None, [99, 11, 17, 23]), # GCC 10.2 (max: C2x)
('rhel90', 'gcc', None, [99, 11, 17, 23]), # GCC 11.2 (max: C2x)
('rhel92', 'gcc', None, [99, 11, 17, 23]), # GCC 11.3 (max: C2x)
('rhel94', 'gcc', None, [99, 11, 17, 23]), # GCC 11.4 (max: C2x)
('rhel95', 'gcc', None, [99, 11, 17, 23]), # GCC 11.5 (max: C2x)
('ubuntu2404', 'gcc-13', None, [99, 11, 17, 23]), # GCC 13.3 (max: C2x)

('macos-14-arm64', 'clang', None, [99, 11, 17, 23]), # Apple Clang

Expand Down Expand Up @@ -91,7 +88,7 @@ def tasks():
name=task_name,
run_on=distro.name,
tags=tags + [f'std-c{std}'],
commands=[InstallUV.call(), StdCompile.call(vars=compile_vars | with_std)],
commands=[StdCompile.call(vars=compile_vars | with_std)],
)
)

Expand Down
4 changes: 1 addition & 3 deletions .evergreen/config_generator/components/clang_format.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
from shrub.v3.evg_command import EvgCommandType
from shrub.v3.evg_task import EvgTask, EvgTaskRef

from config_generator.components.funcs.install_uv import InstallUV
from config_generator.etc.distros import find_small_distro
from config_generator.etc.function import Function
from config_generator.etc.utils import bash_exec
Expand All @@ -19,7 +18,7 @@ class ClangFormat(Function):
env={
'DRYRUN': '1',
},
script='PATH="${UV_INSTALL_DIR}:$PATH" uv run --frozen --only-group=format tools/format.py --mode=check',
script='uv run --frozen --only-group=format tools/format.py --mode=check',
),
]

Expand All @@ -33,7 +32,6 @@ def tasks():
name=TAG,
tags=[TAG],
commands=[
InstallUV.call(),
ClangFormat.call(),
],
)
Expand Down
36 changes: 17 additions & 19 deletions .evergreen/config_generator/components/cse/openssl.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,36 +14,34 @@
# fmt: off
COMPILE_MATRIX = [
# For test matrix.
('rhel8-latest', 'gcc', None, ['cyrus']),
('rhel8-zseries', 'gcc', None, ['cyrus']), # Big Endian.
('ubuntu2004-arm64', 'gcc', None, ['cyrus']),
('windows-vsCurrent', 'vs2022x64', None, ['cyrus']),
('rhel8-latest', 'gcc', None, ['cyrus']),
('rhel8-arm64-latest', 'gcc', None, ['cyrus']),
('rhel8-zseries', 'gcc', None, ['cyrus']), # Big Endian.
('windows-vsCurrent', 'vs2022x64', None, ['cyrus']),

# For compile only.
('debian11', 'clang', None, ['cyrus']),
('debian11', 'gcc', None, ['cyrus']),
('debian12', 'clang', None, ['cyrus']),
('debian12', 'gcc', None, ['cyrus']),
('rhel80', 'gcc', None, ['cyrus']),
('ubuntu2004', 'gcc', None, ['cyrus']),
('ubuntu2004', 'clang', None, ['cyrus']),
('ubuntu2204', 'gcc', None, ['cyrus']),
('ubuntu2204', 'clang-12', None, ['cyrus']),
('ubuntu2404', 'gcc', None, ['cyrus']),
('ubuntu2404', 'clang-14', None, ['cyrus']),
('debian11-latest', 'clang', None, ['cyrus']),
('debian11-latest', 'gcc', None, ['cyrus']),
('debian12-latest', 'clang', None, ['cyrus']),
('debian12-latest', 'gcc', None, ['cyrus']),
('rhel80', 'gcc', None, ['cyrus']),
('ubuntu2204', 'gcc', None, ['cyrus']),
('ubuntu2204', 'clang-12', None, ['cyrus']),
('ubuntu2404', 'gcc', None, ['cyrus']),
('ubuntu2404', 'clang-14', None, ['cyrus']),
]

# QE (subset of CSFLE) requires 7.0+ and are skipped by "server" tasks.
TEST_MATRIX = [
('rhel8-latest', 'gcc', None, 'cyrus', ['auth'], ['server', 'replica', 'sharded'], ['4.2', '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),

('windows-vsCurrent', 'vs2022x64', None, 'cyrus', ['auth'], ['server', 'replica', 'sharded'], ['4.2', '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),

# ubuntu2004-arm64 only provides 4.4+.
('ubuntu2004-arm64', 'gcc', None, 'cyrus', ['auth'], ['server', 'replica', 'sharded'], ['4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
# rhel8-arm64 only provides 4.4+.
('rhel8-arm64-latest', 'gcc', None, 'cyrus', ['auth'], ['server', 'replica', 'sharded'], ['4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),

# rhel8-zseries only provides 5.0+. Resource-limited: use sparingly.
('rhel8-zseries', 'gcc', None, 'cyrus', ['auth'], ['sharded'], ['5.0', 'latest']),

('windows-vsCurrent', 'vs2022x64', None, 'cyrus', ['auth'], ['server', 'replica', 'sharded'], ['4.2', '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
]
# fmt: on
# pylint: enable=line-too-long
Expand Down
4 changes: 2 additions & 2 deletions .evergreen/config_generator/components/earthly.py
Original file line number Diff line number Diff line change
Expand Up @@ -274,8 +274,8 @@ def earthly_task(

CONTAINER_RUN_DISTROS = [
'amazon2',
'debian11-large',
'debian12-large',
"debian11-latest-large",
'debian12-latest-large',
'ubuntu2204-large',
'ubuntu2404-large',
]
Expand Down
56 changes: 0 additions & 56 deletions .evergreen/config_generator/components/funcs/install_uv.py

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,10 @@ class RunSimpleHTTPServer(Function):
command_type=command_type,
background=True,
working_dir='mongoc',
include_expansions_in_env=['UV_INSTALL_DIR'],
script="""\
set -o errexit
echo "Starting simple HTTP server..."
PATH="${UV_INSTALL_DIR}:$PATH" uvx python .evergreen/scripts/simple_http_server.py
uvx python .evergreen/scripts/simple_http_server.py
echo "Starting simple HTTP server... done."
""",
),
Expand Down
6 changes: 2 additions & 4 deletions .evergreen/config_generator/components/loadbalanced.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
from config_generator.components.funcs.bootstrap_mongo_orchestration import BootstrapMongoOrchestration
from config_generator.components.funcs.fetch_build import FetchBuild
from config_generator.components.funcs.fetch_det import FetchDET
from config_generator.components.funcs.install_uv import InstallUV
from config_generator.components.funcs.run_simple_http_server import RunSimpleHTTPServer
from config_generator.components.funcs.run_tests import RunTests
from config_generator.components.funcs.upload_build import UploadBuild
Expand All @@ -25,6 +24,7 @@ def functions():
script="""\
export DRIVERS_TOOLS=./drivers-evergreen-tools
export MONGODB_URI="${MONGODB_URI}"
export PATH="$(uv tool dir --bin):$PATH" # DEVPROD-19733
$DRIVERS_TOOLS/.evergreen/run-load-balancer.sh start
""",
),
Expand Down Expand Up @@ -57,7 +57,6 @@ def make_test_task(auth: bool, ssl: bool, server_version: str):
'LOAD_BALANCER': 'on',
}
),
InstallUV.call(),
RunSimpleHTTPServer.call(),
FunctionCall(func='start-load-balancer', vars={'MONGODB_URI': 'mongodb://localhost:27017,localhost:27018'}),
RunTests().call(
Expand All @@ -79,11 +78,10 @@ def tasks():
run_on=find_large_distro(_DISTRO_NAME).name,
tags=['loadbalanced', _DISTRO_NAME, _COMPILER],
commands=[
InstallUV.call(),
bash_exec(
command_type=EvgCommandType.TEST,
env={'CC': _COMPILER, 'CFLAGS': '-fno-omit-frame-pointer', 'SSL': 'OPENSSL'},
include_expansions_in_env=['distro_id', 'UV_INSTALL_DIR'],
include_expansions_in_env=['distro_id'],
working_dir='mongoc',
script='.evergreen/scripts/compile.sh',
),
Expand Down
4 changes: 1 addition & 3 deletions .evergreen/config_generator/components/make_docs.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
from shrub.v3.evg_command import EvgCommandType, s3_put
from shrub.v3.evg_task import EvgTask

from config_generator.components.funcs.install_uv import InstallUV
from config_generator.etc.function import Function, merge_defns
from config_generator.etc.utils import bash_exec

Expand All @@ -15,7 +14,7 @@ class MakeDocs(Function):
include_expansions_in_env=['distro_id'],
script="""\
# See SphinxBuild.cmake for EVG_DOCS_BUILD reasoning
PATH="${UV_INSTALL_DIR}:$PATH" uv run --frozen --only-group docs env EVG_DOCS_BUILD=1 .evergreen/scripts/build-docs.sh
uv run --frozen --only-group docs env EVG_DOCS_BUILD=1 .evergreen/scripts/build-docs.sh
""",
),
]
Expand Down Expand Up @@ -116,7 +115,6 @@ def tasks():
EvgTask(
name='make-docs',
commands=[
InstallUV.call(),
MakeDocs.call(),
UploadDocs.call(),
UploadManPages.call(),
Expand Down
2 changes: 0 additions & 2 deletions .evergreen/config_generator/components/mock_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
from shrub.v3.evg_command import EvgCommandType
from shrub.v3.evg_task import EvgTask, EvgTaskRef

from config_generator.components.funcs.install_uv import InstallUV
from config_generator.components.funcs.run_simple_http_server import RunSimpleHTTPServer
from config_generator.etc.utils import bash_exec

Expand All @@ -13,7 +12,6 @@ def tasks():
name='mock-server-test',
run_on='ubuntu2204-small',
commands=[
InstallUV.call(),
RunSimpleHTTPServer.call(),
bash_exec(
command_type=EvgCommandType.TEST,
Expand Down
4 changes: 0 additions & 4 deletions .evergreen/config_generator/components/openssl_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
from shrub.v3.evg_task import EvgTask, EvgTaskRef

from config_generator.components.funcs.fetch_source import FetchSource
from config_generator.components.funcs.install_uv import InstallUV
from config_generator.etc.distros import find_large_distro, make_distro_str
from config_generator.etc.function import Function
from config_generator.etc.utils import bash_exec
Expand Down Expand Up @@ -51,7 +50,6 @@ class OpenSSLSetup(Function):
include_expansions_in_env=[
'OPENSSL_USE_STATIC_LIBS',
'OPENSSL_VERSION',
'UV_INSTALL_DIR',
],
script='.evergreen/scripts/openssl-compat-check.sh',
),
Expand All @@ -78,7 +76,6 @@ def tasks():
tags=[TAG, f'openssl-{version}', f'openssl-{link_type}', distro_name, compiler],
commands=[
FetchSource.call(),
InstallUV.call(),
OpenSSLSetup.call(vars=vars),
FunctionCall(func='run auth tests'),
],
Expand All @@ -99,7 +96,6 @@ def tasks():
tags=[TAG, f'openssl-fips-{version}', f'openssl-{link_type}', distro_name, compiler],
commands=[
FetchSource.call(),
InstallUV.call(),
OpenSSLSetup.call(vars=vars),
FunctionCall(func='run auth tests'),
],
Expand Down
Loading