From f40f079bf50e26cbc6b87487708c02d5533e3587 Mon Sep 17 00:00:00 2001 From: Ezra Chung Date: Tue, 12 Nov 2024 09:06:52 -0600 Subject: [PATCH 1/3] uv: bump shrub-py to 3.4.0 --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 2c8b3e7b39..dd8e5311cb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,7 +10,7 @@ dev = [ # .evergreen/config_generator/generate.py "packaging>=14.0", "pydantic>=2.7", - "shrub-py>=3.3.1", + "shrub-py>=3.4.0", # etc/make_release.py "click>=6.0", From b8b90a3f0924dbeccab60209f7e1f56377201c3e Mon Sep 17 00:00:00 2001 From: Ezra Chung Date: Tue, 12 Nov 2024 09:07:03 -0600 Subject: [PATCH 2/3] uv: sync lockfile --- uv.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/uv.lock b/uv.lock index 8cec220568..2febadb398 100644 --- a/uv.lock +++ b/uv.lock @@ -338,7 +338,7 @@ dev = [ { name = "packaging", specifier = ">=14.0" }, { name = "pydantic", specifier = ">=2.7" }, { name = "pygithub", specifier = ">=2.0" }, - { name = "shrub-py", specifier = ">=3.3.1" }, + { name = "shrub-py", specifier = ">=3.4.0" }, ] [[package]] @@ -665,7 +665,7 @@ wheels = [ [[package]] name = "shrub-py" -version = "3.3.1" +version = "3.4.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "croniter" }, @@ -673,9 +673,9 @@ dependencies = [ { name = "pyyaml" }, { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/01/d7/b0c4ec5dca91e620926372f1363bbfcf5432b9579e6b8b9c8dd77e597b1a/shrub_py-3.3.1.tar.gz", hash = "sha256:dddf11e7362e176ddccb0e90c3938e7863f57cae70cb878c90680e8c77521fef", size = 33474 } +sdist = { url = "https://files.pythonhosted.org/packages/6e/28/b0a6c4bb6136b6a0c30b9a1f689198c38a7f6661a33ae807a3a68605318d/shrub_py-3.4.0.tar.gz", hash = "sha256:57b1c32a91fa0c4ce7f506178f72d38f7bf2691e76c75a66683e72354b9cd600", size = 33559 } wheels = [ - { url = "https://files.pythonhosted.org/packages/db/a3/03e3e9a4a1697d330b0001246a6ce39a6f27ce1f232933f8406918df893c/shrub_py-3.3.1-py3-none-any.whl", hash = "sha256:0190deecca05800b9fa7a2d56e368c9411043719c4dc1468df9feadee720b63e", size = 39954 }, + { url = "https://files.pythonhosted.org/packages/17/fa/4d1141a958854f8a7d3fe27703141cfa2100ba0515872d95d11f9245e30f/shrub_py-3.4.0-py3-none-any.whl", hash = "sha256:3b04498bf37b58d42052db11ffd0b5c8ff324a277b826a2f6591282fe227ac99", size = 40031 }, ] [[package]] From 68188b9dd4e5245f6094b45383d395d54d967a9c Mon Sep 17 00:00:00 2001 From: Ezra Chung Date: Tue, 12 Nov 2024 09:48:49 -0600 Subject: [PATCH 3/3] evg: remove teardown_task_can_fail_task workaround --- .../config_generator/components/abi_stability.py | 7 ++++--- .evergreen/config_generator/etc/utils.py | 12 ------------ 2 files changed, 4 insertions(+), 15 deletions(-) diff --git a/.evergreen/config_generator/components/abi_stability.py b/.evergreen/config_generator/components/abi_stability.py index 2db4f2de29..99dfbd5a1b 100644 --- a/.evergreen/config_generator/components/abi_stability.py +++ b/.evergreen/config_generator/components/abi_stability.py @@ -2,11 +2,12 @@ from config_generator.etc.distros import find_large_distro from config_generator.etc.function import Function, merge_defns -from config_generator.etc.utils import TaskGroup, bash_exec +from config_generator.etc.utils import bash_exec +from shrub.v3.evg_build_variant import BuildVariant, DisplayTask from shrub.v3.evg_command import EvgCommandType, git_get_project, s3_put from shrub.v3.evg_task import EvgTask, EvgTaskRef -from shrub.v3.evg_build_variant import BuildVariant, DisplayTask +from shrub.v3.evg_task_group import EvgTaskGroup TAG = 'abi-stability' @@ -149,7 +150,7 @@ def tasks(): def task_groups(): return [ - TaskGroup( + EvgTaskGroup( name=f'tg-{TAG}', max_hosts=-1, setup_group_can_fail_task=True, diff --git a/.evergreen/config_generator/etc/utils.py b/.evergreen/config_generator/etc/utils.py index 19bd046dd7..d013b2b71d 100644 --- a/.evergreen/config_generator/etc/utils.py +++ b/.evergreen/config_generator/etc/utils.py @@ -11,7 +11,6 @@ from shrub.v3.evg_project import EvgProject from shrub.v3.shrub_service import ConfigDumper from shrub.v3.evg_task import EvgTaskRef -from shrub.v3.evg_task_group import EvgTaskGroup from typing_extensions import get_args, get_origin, get_type_hints T = TypeVar('T') @@ -28,17 +27,6 @@ class TaskRef(EvgTaskRef): batchtime: int | None = None -# Equivalent to EvgTaskGroup but defines additional properties. -class TaskGroup(EvgTaskGroup): - """ - An evergreen task group model that also includes additional properties. - - (The shrub.py model is missing some properties) - """ - - teardown_task_can_fail_task: bool | None = None - - # Automatically formats the provided script and invokes it in Bash. def bash_exec( script,