From 515b13503dace7fd6e2a6b13941efdee81113710 Mon Sep 17 00:00:00 2001 From: Bruno Antonellini Date: Fri, 17 Nov 2023 17:34:21 -0300 Subject: [PATCH 1/2] Add validation to node type handling --- dbt_coves/tasks/generate/airflow_dags.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/dbt_coves/tasks/generate/airflow_dags.py b/dbt_coves/tasks/generate/airflow_dags.py index 83c277dd..d884147b 100644 --- a/dbt_coves/tasks/generate/airflow_dags.py +++ b/dbt_coves/tasks/generate/airflow_dags.py @@ -259,12 +259,17 @@ def generate_node(self, node_name: str, node_conf: Dict[str, Any]): """ Node generation entrypoint """ - node_type = node_conf.pop("type", "task") - if node_type == "task_group": - self.generate_task_group(node_name, node_conf) - if node_type == "task": - task_output = self.generate_task_output(node_name, node_conf) - self.dag_output["dag"].extend(task_output) + try: + node_type = node_conf.pop("type") + if node_type == "task_group": + self.generate_task_group(node_name, node_conf) + if node_type == "task": + task_output = self.generate_task_output(node_name, node_conf) + self.dag_output["dag"].extend(task_output) + except KeyError: + raise GenerateAirflowDagsException( + "No node-type provided, please specify node type: 'task' or 'task_group'" + ) def get_generator_class(self, generator: str): """ From 9344473ff030909ef98564703e3dab69abae8d2c Mon Sep 17 00:00:00 2001 From: Bruno Antonellini Date: Fri, 17 Nov 2023 17:36:46 -0300 Subject: [PATCH 2/2] Revert validation due to secrets deep merge --- dbt_coves/tasks/generate/airflow_dags.py | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/dbt_coves/tasks/generate/airflow_dags.py b/dbt_coves/tasks/generate/airflow_dags.py index d884147b..9d81d306 100644 --- a/dbt_coves/tasks/generate/airflow_dags.py +++ b/dbt_coves/tasks/generate/airflow_dags.py @@ -259,17 +259,12 @@ def generate_node(self, node_name: str, node_conf: Dict[str, Any]): """ Node generation entrypoint """ - try: - node_type = node_conf.pop("type") - if node_type == "task_group": - self.generate_task_group(node_name, node_conf) - if node_type == "task": - task_output = self.generate_task_output(node_name, node_conf) - self.dag_output["dag"].extend(task_output) - except KeyError: - raise GenerateAirflowDagsException( - "No node-type provided, please specify node type: 'task' or 'task_group'" - ) + node_type = node_conf.pop("type", "") + if node_type == "task_group": + self.generate_task_group(node_name, node_conf) + if node_type == "task": + task_output = self.generate_task_output(node_name, node_conf) + self.dag_output["dag"].extend(task_output) def get_generator_class(self, generator: str): """