In base.py def get_table_from_metadata if expects to get columns from the catalog:
for column in model_metadata.get("node", {}).get("catalog", {}).get("columns", []):
table.columns.append(
Column(
name=column.get("name", "").lower(),
data_type=column.get("type", "").lower(),
description=column.get("description", ""),
)
)
To Reproduce
Steps to reproduce the behavior:
Create a dbt ephemeral model
Rerun your dbt Cloud job having docs generated
run dbterd run-metadata
Expected behavior
It should handle ephemeral models in any way. I just put the loop into a if-clause, but I'm sure you'll find a good solution being aware of the full application structure.
Describe the bug Hey 💯 I've been testing the Discovery API solution, but it failed because of my ephemeral models.
Graph example:
In base.py def get_table_from_metadata if expects to get columns from the catalog:
To Reproduce Steps to reproduce the behavior:
Expected behavior It should handle ephemeral models in any way. I just put the loop into a if-clause, but I'm sure you'll find a good solution being aware of the full application structure.
Best, Marvin