diff options
| author | Lucas de Castro Borges <lucas@gnuabordo.com.br> | 2025-02-14 14:26:38 -0300 |
|---|---|---|
| committer | Lucas de Castro Borges <lucas@gnuabordo.com.br> | 2025-02-14 14:26:38 -0300 |
| commit | 294bc6ecabf14c09c9bc8644704921dcf97cb44e (patch) | |
| tree | 279b1e0bab53901a1647ac63c1c724f0f789a663 /buildscripts/evergreen_activate_gen_tasks.py | |
| parent | 70be7c27a251621187a1de533462ae2bb1e3bd39 (diff) | |
| parent | 1e917fd798aa25b7066d4b414b51184f13d5a092 (diff) | |
Update upstream source from tag 'upstream/6.0.10'debian/6.0.10-1
Update to upstream version '6.0.10'
with Debian dir 2d176fa254eee97b139f712fec5709641335a8c3
Diffstat (limited to 'buildscripts/evergreen_activate_gen_tasks.py')
| -rwxr-xr-x | buildscripts/evergreen_activate_gen_tasks.py | 52 |
1 files changed, 29 insertions, 23 deletions
diff --git a/buildscripts/evergreen_activate_gen_tasks.py b/buildscripts/evergreen_activate_gen_tasks.py index 13eed325701..1ccd95642c5 100755 --- a/buildscripts/evergreen_activate_gen_tasks.py +++ b/buildscripts/evergreen_activate_gen_tasks.py @@ -21,6 +21,9 @@ from buildscripts.util.taskname import remove_gen_suffix LOGGER = structlog.getLogger(__name__) EVG_CONFIG_FILE = "./.evergreen.yml" +BURN_IN_TAGS = "burn_in_tags" +BURN_IN_TESTS = "burn_in_tests" +BURN_IN_VARIANT_SUFFIX = "generated-by-burn-in-tags" class EvgExpansions(BaseModel): @@ -28,10 +31,12 @@ class EvgExpansions(BaseModel): Evergreen expansions file contents. build_id: ID of build being run. + version_id: ID of version being run. task_name: Name of task creating the generated configuration. """ build_id: str + version_id: str task_name: str @classmethod @@ -45,7 +50,7 @@ class EvgExpansions(BaseModel): return remove_gen_suffix(self.task_name) -def activate_task(build_id: str, task_name: str, evg_api: EvergreenApi) -> None: +def activate_task(expansions: EvgExpansions, evg_api: EvergreenApi) -> None: """ Activate the given task in the specified build. @@ -53,27 +58,28 @@ def activate_task(build_id: str, task_name: str, evg_api: EvergreenApi) -> None: :param task_name: Name of task to activate. :param evg_api: Evergreen API client. """ - build = evg_api.build_by_id(build_id) - task_list = build.get_tasks() - for task in task_list: - if task.display_name == task_name: - LOGGER.info("Activating task", task_id=task.task_id, task_name=task.display_name) - evg_api.configure_task(task.task_id, activated=True) - - # if any(ARCHIVE_DIST_TEST_TASK in dependency["id"] for dependency in task.depends_on): - # _activate_archive_debug_symbols(evg_api, task_list) - - -# def _activate_archive_debug_symbols(evg_api: EvergreenApi, task_list): -# debug_iter = filter(lambda tsk: tsk.display_name == ACTIVATE_ARCHIVE_DIST_TEST_DEBUG_TASK, -# task_list) -# activate_symbol_tasks = list(debug_iter) -# -# if len(activate_symbol_tasks) == 1: -# activated_symbol_task = activate_symbol_tasks[0] -# if not activated_symbol_task.activated: -# LOGGER.info("Activating debug symbols archival", task_id=activated_symbol_task.task_id) -# evg_api.configure_task(activated_symbol_task.task_id, activated=True) + if expansions.task == BURN_IN_TAGS: + version = evg_api.version_by_id(expansions.version_id) + burn_in_build_variants = [ + variant for variant in version.build_variants_map.keys() + if variant.endswith(BURN_IN_VARIANT_SUFFIX) + ] + for build_variant in burn_in_build_variants: + build_id = version.build_variants_map[build_variant] + task_list = evg_api.tasks_by_build(build_id) + + for task in task_list: + if task.display_name == BURN_IN_TESTS: + LOGGER.info("Activating task", task_id=task.task_id, + task_name=task.display_name) + evg_api.configure_task(task.task_id, activated=True) + + else: + task_list = evg_api.tasks_by_build(expansions.build_id) + for task in task_list: + if task.display_name == expansions.task: + LOGGER.info("Activating task", task_id=task.task_id, task_name=task.display_name) + evg_api.configure_task(task.task_id, activated=True) @click.command() @@ -96,7 +102,7 @@ def main(expansion_file: str, evergreen_config: str, verbose: bool) -> None: expansions = EvgExpansions.from_yaml_file(expansion_file) evg_api = RetryingEvergreenApi.get_api(config_file=evergreen_config) - activate_task(expansions.build_id, expansions.task, evg_api) + activate_task(expansions, evg_api) if __name__ == "__main__": |
