datnguye / dbterd

Generate the ERD as a code from dbt artifacts
https://dbterd.datnguyen.de/
MIT License
194 stars 28 forks source link

[FEAT] Select a database or dbt folder to generate a subset of docs #112

Open Svendewaard opened 2 months ago

Svendewaard commented 2 months ago

Is your feature request related to a problem? Please describe: Currently I can generate a DBML using -s schema:MARTS. But our analytics data layer (situated in folder 'models/ADL') has multiple schemas that we would like to document in a combined DBML. I would now have to select all schemas manually.

Describe the solution you'd like: A way to select the database of models, e.g. -s database:PROD_ANALYTICS In addition, being able to select specific dbt folder(s) would also be great, e.g. 'models/ADL/cubes', similar to dbt's --select

datnguye commented 2 months ago

Thanks @Svendewaard for raising the feat 🙌

I think yes it makes sense to add it, but for me, it would be low priority now since I was too busy with other things. And for the workaround beside with yours, out of curiosity, just wondering if you could somehow manage it with Wildcard selection?

dbterd run -s "wildcard:*xyz"

Or maybe try to leverage --dbt option which will let dbterd to use dbt Selection instead:

dbterd run --dbt -s "path:models/staging/github"

In case that you'd like to raise PR for this, I will be happy to move forward and to support it, that's why I will mark help_wanted now.

Let me know what you think. Thank you!

Svendewaard commented 2 months ago

@datnguye Oh I did not see that option (--dbt -s flag). That works, thank you!