diff --git a/.changes/unreleased/Fixes-20230627-152528.yaml b/.changes/unreleased/Fixes-20230627-152528.yaml new file mode 100644 index 00000000000..78d017e88b5 --- /dev/null +++ b/.changes/unreleased/Fixes-20230627-152528.yaml @@ -0,0 +1,6 @@ +kind: Fixes +body: add access to ModelNodeArgs for external node building +time: 2023-06-27T15:25:28.488767-04:00 +custom: + Author: michelleark + Issue: "7890" diff --git a/core/dbt/contracts/graph/node_args.py b/core/dbt/contracts/graph/node_args.py index 69e86686c6a..cd419e69b5e 100644 --- a/core/dbt/contracts/graph/node_args.py +++ b/core/dbt/contracts/graph/node_args.py @@ -3,6 +3,7 @@ from typing import Optional, List from dbt.contracts.graph.unparsed import NodeVersion +from dbt.node_types import AccessType @dataclass @@ -16,6 +17,7 @@ class ModelNodeArgs: version: Optional[NodeVersion] = None latest_version: Optional[NodeVersion] = None deprecation_date: Optional[datetime] = None + access: Optional[str] = AccessType.Protected.value generated_at: datetime = field(default_factory=datetime.utcnow) depends_on_nodes: List[str] = field(default_factory=list) enabled: bool = True diff --git a/core/dbt/contracts/graph/nodes.py b/core/dbt/contracts/graph/nodes.py index c5cd99496f1..0f87306e97d 100644 --- a/core/dbt/contracts/graph/nodes.py +++ b/core/dbt/contracts/graph/nodes.py @@ -599,6 +599,7 @@ def from_args(cls, args: ModelNodeArgs) -> "ModelNode": alias=args.identifier, deprecation_date=args.deprecation_date, checksum=FileHash.from_contents(f"{unique_id},{args.generated_at}"), + access=AccessType(args.access), original_file_path="", path="", depends_on=DependsOn(nodes=args.depends_on_nodes), diff --git a/core/dbt/parser/manifest.py b/core/dbt/parser/manifest.py index 797b2534215..a8e2db684b7 100644 --- a/core/dbt/parser/manifest.py +++ b/core/dbt/parser/manifest.py @@ -776,6 +776,7 @@ def build_external_nodes(self) -> List[ModelNodeArgs]: schema=public_node.schema, identifier=public_node.identifier, deprecation_date=public_node.deprecation_date, + access=AccessType.Public, ) )