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
11 changes: 4 additions & 7 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,8 +13,7 @@
# 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)
# ('rhel84', 'clang', None, [99, 11, 17, 23]), # Clang 11.0 (max: C2x) # No uv binary available.
('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)
('rhel91', 'clang', None, [99, 11, 17, 23]), # Clang 14.0 (max: C2x)
Expand All @@ -26,9 +24,8 @@

('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)
# ('rhel84', 'gcc', None, [99, 11, 17, ]), # GCC 8.4 (max: C17) # No uv binary available.
# ('debian11', 'gcc-10', None, [99, 11, 17, 23]), # GCC 10.2 (max: C2x) # No uv binary available.
('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)
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
22 changes: 10 additions & 12 deletions .evergreen/config_generator/components/cse/openssl.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,19 +14,17 @@
# 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']),
# ('debian11', 'clang', None, ['cyrus']), # No uv binary available.
# ('debian11', 'gcc', None, ['cyrus']), # No uv binary available.
('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']),
Expand All @@ -37,13 +35,13 @@
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
2 changes: 1 addition & 1 deletion .evergreen/config_generator/components/earthly.py
Original file line number Diff line number Diff line change
Expand Up @@ -274,7 +274,7 @@ def earthly_task(

CONTAINER_RUN_DISTROS = [
'amazon2',
'debian11-large',
# "debian11-large", # No uv binary available.
'debian12-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
10 changes: 6 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 Down Expand Up @@ -57,8 +56,12 @@ def make_test_task(auth: bool, ssl: bool, server_version: str):
'LOAD_BALANCER': 'on',
}
),
InstallUV.call(),
RunSimpleHTTPServer.call(),
# haproxy may not be available on the current distro.
bash_exec(
command_type=EvgCommandType.SETUP,
script='uv tool install haproxy-cli',
),
FunctionCall(func='start-load-balancer', vars={'MONGODB_URI': 'mongodb://localhost:27017,localhost:27018'}),
RunTests().call(
vars={
Expand All @@ -79,11 +82,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
23 changes: 11 additions & 12 deletions .evergreen/config_generator/components/sasl/openssl.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,30 +15,29 @@
COMPILE_MATRIX = [
# For test matrix.
('amazon2023-arm64-latest-large-m8g', 'gcc', None, ['cyrus']),
('rhel8-latest', 'gcc', None, ['cyrus']),
('rhel8-power', 'gcc', None, ['cyrus']),
('rhel8-zseries', 'gcc', None, ['cyrus']),
('ubuntu2004-arm64', 'gcc', None, ['cyrus']),
('windows-vsCurrent', 'vs2017x64', None, ['cyrus']),
('rhel8-latest', 'gcc', None, ['cyrus']),
('rhel8-arm64-latest', 'gcc', None, ['cyrus']),
('rhel8-power', 'gcc', None, ['cyrus']),
('rhel8-zseries', 'gcc', None, ['cyrus']),
('windows-vsCurrent', 'vs2017x64', None, ['cyrus']),

# For compile only.
('debian11', 'gcc', None, ['cyrus']),
# ('debian11', 'gcc', None, ['cyrus']), # No uv binary available.
('debian12', 'gcc', None, ['cyrus']),
('rhel80', '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']),
]

TEST_MATRIX = [
('rhel8-latest', 'gcc', None, 'cyrus', ['auth'], ['server'], ['4.2', '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
('rhel8-power', 'gcc', None, 'cyrus', ['auth'], ['server'], ['4.2', '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
('rhel8-zseries', 'gcc', None, 'cyrus', ['auth'], ['server'], [ '5.0', '6.0', '7.0', '8.0', 'latest']),
('rhel8-latest', 'gcc', None, 'cyrus', ['auth'], ['server'], ['4.2', '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
('rhel8-arm64-latest', 'gcc', None, 'cyrus', ['auth'], ['server'], [ '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
('rhel8-power', 'gcc', None, 'cyrus', ['auth'], ['server'], ['4.2', '4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
('rhel8-zseries', 'gcc', None, 'cyrus', ['auth'], ['server'], [ '5.0', '6.0', '7.0', '8.0', 'latest']),

('ubuntu2004-arm64', 'gcc', None, 'cyrus', ['auth'], ['server'], ['4.4', '5.0', '6.0', '7.0', '8.0', 'latest']),
('windows-vsCurrent', 'vs2017x64', None, 'cyrus', ['auth'], ['server'], [ 'latest']),
('windows-vsCurrent', 'vs2017x64', None, 'cyrus', ['auth'], ['server'], ['latest']),

# Test with Graviton processor:
('amazon2023-arm64-latest-large-m8g', 'gcc', None, 'cyrus', ['auth'], ['server', 'replica', 'sharded'], ['latest']),
Expand Down
8 changes: 3 additions & 5 deletions .evergreen/config_generator/components/scan_build.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
from shrub.v3.evg_command import EvgCommandType, FunctionCall
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 @@ -13,9 +12,9 @@
# pylint: disable=line-too-long
# fmt: off
MATRIX = [
('macos-14-arm64', 'clang', None ),
('ubuntu2004-arm64', 'clang', None ),
('ubuntu2004', 'clang', 'i686'),
('macos-14-arm64', 'clang', None ),
('ubuntu2204-arm64', 'clang', None ),
('ubuntu2204', 'clang-12', 'i686'),
]
# fmt: on
# pylint: enable=line-too-long
Expand Down Expand Up @@ -63,7 +62,6 @@ def tasks():
run_on=distro.name,
tags=tags,
commands=[
InstallUV.call(),
ScanBuild.call(vars=compile_vars if compile_vars else None),
FunctionCall(func='upload scan artifacts'),
],
Expand Down
Loading