-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[external-assets] Implement AssetGraph with AssetNode and RemoteAsset…
…Node (#20114) ## Summary & Motivation Internal companion PR: dagster-io/internal#8537 Initial implementation of asset nodes for the `AssetGraph`. - `BaseAssetGraph` is now generic in a new `BaseAssetNode` class that exposes the metadata for an asset. - The node class for `AssetGraph` is `AssetNode`. It wraps an `AssetsDefinition`. - The node class for `RemoteAssetGraph` is `RemoteAssetNode`. It wraps a list of `ExternalAssetNode` (to be renamed upstack) objects sourced from one or more code locations. - Moving to nodes with a common interface allows many property accessor methods to be deleted on `BaseAssetGraph` and exposed on `BaseAssetNode` instead. The use of a common interface on the two kinds of nodes allows other method impls to be hoisted to the base `AssetGraph` class. - To reduce noise in this PR, I have not changed callsites (with a few exceptions), and instead just swapped out property accessor method impls. Callsites are changed in an upstack PR, where e.g. `asset_graph.get(<key>).auto_materialize_policy` is used. ## How I Tested These Changes Existing test suite.
- Loading branch information
1 parent
e4fb18e
commit c5764e9
Showing
5 changed files
with
641 additions
and
436 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.