nicholasyager / dbt-loom

A dbt-core plugin to weave together multi-project dbt-core deployments
The Unlicense
104 stars 19 forks source link

Enable errors for Private and Protected nodes #40

Closed noel closed 4 months ago

noel commented 5 months ago

Is your feature request related to a problem? Please describe. Right now, upstream producer private and protected nodes are not included in the consumer project. When a user tries to access one of these nodes, they are given an error that the node does not exist. It would be a better UX to show an error like

Parsing Error
  Node model.great_bay.test_us_population attempted to reference node model.balboa.us_population, which is not allowed because the referenced node is private to the marketing group.
nicholasyager commented 5 months ago

Thanks for creating this issue, @noel! I've done some initial digging and here's what I've found so far:

I believe that there may be some ways to work around this through some clever python patching -- either by wrapping the access code with some custom methods to verify dbt-loom access, or by patching how dependencies are loaded so we can inject dependencies in, too. In any case, the investigation continues.