From 12faff867b52eeb908756c77c397d1a68b40edee Mon Sep 17 00:00:00 2001 From: Hussein Awala Date: Wed, 7 Jun 2023 19:14:58 +0200 Subject: [PATCH] Fix wrong update for nested group default args Signed-off-by: Hussein Awala --- airflow/utils/task_group.py | 2 +- tests/utils/test_task_group.py | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/airflow/utils/task_group.py b/airflow/utils/task_group.py index 4b8392be7b3f0..4d79d74e24de1 100644 --- a/airflow/utils/task_group.py +++ b/airflow/utils/task_group.py @@ -179,7 +179,7 @@ def _check_for_group_id_collisions(self, add_suffix_on_collision: bool): def _update_default_args(self, parent_group: TaskGroup): if parent_group.default_args: - self.default_args = {**self.default_args, **parent_group.default_args} + self.default_args = {**parent_group.default_args, **self.default_args} @classmethod def create_root(cls, dag: DAG) -> TaskGroup: diff --git a/tests/utils/test_task_group.py b/tests/utils/test_task_group.py index c9927eb3ba257..a5262aa2eb03b 100644 --- a/tests/utils/test_task_group.py +++ b/tests/utils/test_task_group.py @@ -1368,11 +1368,16 @@ def test_override_dag_default_args_in_multi_level_nested_tg(): "execution_timeout": timedelta(seconds=10), }, ): - with TaskGroup(group_id="first_nested_task_group"): + with TaskGroup( + group_id="first_nested_task_group", + default_args={ + "owner": "z", + }, + ): with TaskGroup(group_id="second_nested_task_group"): with TaskGroup(group_id="third_nested_task_group"): task = EmptyOperator(task_id="task") assert task.retries == 1 - assert task.owner == "y" + assert task.owner == "z" assert task.execution_timeout == timedelta(seconds=10)