mirror of
https://github.com/datahub-project/datahub.git
synced 2025-09-14 11:41:37 +00:00
feat(ingest/airflow): able to set platform_instance
in Dataset
(#8313)
Co-authored-by: Andrew Sikowitz <andrew.sikowitz@acryl.io>
This commit is contained in:
parent
61a1f5775c
commit
64bcc132a3
@ -1,4 +1,5 @@
|
||||
from abc import abstractmethod
|
||||
from typing import Optional
|
||||
|
||||
import attr
|
||||
|
||||
@ -18,10 +19,16 @@ class Dataset(_Entity):
|
||||
platform: str
|
||||
name: str
|
||||
env: str = builder.DEFAULT_ENV
|
||||
platform_instance: Optional[str] = None
|
||||
|
||||
@property
|
||||
def urn(self):
|
||||
return builder.make_dataset_urn(self.platform, self.name, self.env)
|
||||
return builder.make_dataset_urn_with_platform_instance(
|
||||
platform=self.platform,
|
||||
name=self.name,
|
||||
platform_instance=self.platform_instance,
|
||||
env=self.env,
|
||||
)
|
||||
|
||||
|
||||
@attr.s(str=True)
|
||||
|
@ -34,8 +34,13 @@ with DAG(
|
||||
dag=dag,
|
||||
bash_command="echo 'This is where you might run your data tooling.'",
|
||||
inlets=[
|
||||
Dataset("snowflake", "mydb.schema.tableA"),
|
||||
Dataset("snowflake", "mydb.schema.tableB", "DEV"),
|
||||
Dataset(platform="snowflake", name="mydb.schema.tableA"),
|
||||
Dataset(platform="snowflake", name="mydb.schema.tableB", env="DEV"),
|
||||
Dataset(
|
||||
platform="snowflake",
|
||||
name="mydb.schema.tableC",
|
||||
platform_instance="cloud",
|
||||
),
|
||||
# You can also put dataset URNs in the inlets/outlets lists.
|
||||
Urn(
|
||||
"urn:li:dataset:(urn:li:dataPlatform:snowflake,mydb.schema.tableC,PROD)"
|
||||
|
@ -57,11 +57,17 @@ with DAG(
|
||||
mces=[
|
||||
builder.make_lineage_mce(
|
||||
upstream_urns=[
|
||||
builder.make_dataset_urn("snowflake", "mydb.schema.tableA"),
|
||||
builder.make_dataset_urn("snowflake", "mydb.schema.tableB"),
|
||||
builder.make_dataset_urn(
|
||||
platform="snowflake", name="mydb.schema.tableA"
|
||||
),
|
||||
builder.make_dataset_urn_with_platform_instance(
|
||||
platform="snowflake",
|
||||
name="mydb.schema.tableB",
|
||||
platform_instance="cloud",
|
||||
),
|
||||
],
|
||||
downstream_urn=builder.make_dataset_urn(
|
||||
"snowflake", "mydb.schema.tableC"
|
||||
platform="snowflake", name="mydb.schema.tableC", env="DEV"
|
||||
),
|
||||
)
|
||||
],
|
||||
|
Loading…
x
Reference in New Issue
Block a user