diff --git a/metadata-ingestion/examples/structured_properties/structured_properties.yaml b/metadata-ingestion/examples/structured_properties/structured_properties.yaml index 0230fbcc61f11b..a569030640b574 100644 --- a/metadata-ingestion/examples/structured_properties/structured_properties.yaml +++ b/metadata-ingestion/examples/structured_properties/structured_properties.yaml @@ -2,6 +2,7 @@ # - urn: urn:li:structuredProperty:io.acryl.privacy.retentionTime # optional if id is provided qualified_name: io.acryl.privacy.retentionTime # required if urn is provided type: number + version: "1.0.0" cardinality: MULTIPLE display_name: Retention Time entity_types: diff --git a/metadata-ingestion/src/datahub/api/entities/structuredproperties/structuredproperties.py b/metadata-ingestion/src/datahub/api/entities/structuredproperties/structuredproperties.py index ce4b4cddeb0612..954dffe0c6911c 100644 --- a/metadata-ingestion/src/datahub/api/entities/structuredproperties/structuredproperties.py +++ b/metadata-ingestion/src/datahub/api/entities/structuredproperties/structuredproperties.py @@ -74,6 +74,7 @@ class StructuredProperties(ConfigModel): urn: Optional[str] = Field(None, validate_default=True) qualified_name: Optional[str] = None type: str + version: Optional[str] = None value_entity_types: Optional[List[str]] = None description: Optional[str] = None display_name: Optional[str] = None @@ -175,6 +176,7 @@ def generate_mcps(self) -> List[MetadataChangeProposalWrapper]: if self.type_qualifier else None ), + version=self.version, ), ) return [mcp] @@ -203,6 +205,7 @@ def from_datahub(cls, graph: DataHubGraph, urn: str) -> "StructuredProperties": qualified_name=structured_property.qualifiedName, display_name=structured_property.displayName, type=structured_property.valueType, + version=structured_property.version, description=structured_property.description, entity_types=structured_property.entityTypes, cardinality=structured_property.cardinality, diff --git a/metadata-ingestion/tests/unit/api/entities/structuredproperties/example_structured_properties_golden.json b/metadata-ingestion/tests/unit/api/entities/structuredproperties/example_structured_properties_golden.json index 71f4c7126b2f9d..3e00c41cd447b0 100644 --- a/metadata-ingestion/tests/unit/api/entities/structuredproperties/example_structured_properties_golden.json +++ b/metadata-ingestion/tests/unit/api/entities/structuredproperties/example_structured_properties_golden.json @@ -35,7 +35,8 @@ "urn:li:entityType:datahub.dataFlow" ], "description": "Retention Time is used to figure out how long to retain records in a dataset", - "immutable": false + "immutable": false, + "version": "1.0.0" } } },