Skip to content
This repository has been archived by the owner on Apr 8, 2024. It is now read-only.

Commit

Permalink
chore: refactor node id to script functions (#338)
Browse files Browse the repository at this point in the history
Refactor node id to script functions
  • Loading branch information
mederka authored May 30, 2022
1 parent a668a58 commit cace1b6
Showing 1 changed file with 9 additions and 19 deletions.
28 changes: 9 additions & 19 deletions src/fal/cli/flow_runner.py
Original file line number Diff line number Diff line change
Expand Up @@ -118,27 +118,17 @@ def _mark_dbt_nodes_status(
def _id_to_fal_scripts(
node_graph: NodeGraph, fal_dbt: FalDbt, id_list: List[str]
) -> List[FalScript]:
return _flow_node_to_fal_scripts(
fal_dbt,
list(
map(
lambda id: node_graph.get_node(id),
id_list,
)
),
)
return [node_to_script(node_graph.get_node(id_), fal_dbt) for id_ in id_list]


def _flow_node_to_fal_scripts(
fal_dbt: FalDbt, list: List[Union[FalFlowNode, None]]
) -> List[FalScript]:
new_list: List[FalScript] = []
for item in list:
if item is not None and isinstance(item, ScriptNode):
new_list.append(cast(ScriptNode, item).script)
elif item is not None and isinstance(item, DbtModelNode):
new_list.append(FalScript.model_script(fal_dbt, item.model))
return new_list
def node_to_script(node: Union[FalFlowNode, None], fal_dbt: FalDbt) -> FalScript:
"""Convert dbt node into a FalScript."""
if node is not None and isinstance(node, ScriptNode):
return cast(ScriptNode, node).script
elif node is not None and isinstance(node, DbtModelNode):
return FalScript.model_script(fal_dbt, node.model)
else:
raise Exception(f"Cannot convert node to script. Node: {node}")


def _unique_id_to_model_name(unique_id: str) -> str:
Expand Down

0 comments on commit cace1b6

Please sign in to comment.