dagster-airbyte 0.26.18__py3-none-any.whl → 0.28.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- dagster_airbyte/__init__.py +12 -3
- dagster_airbyte/asset_decorator.py +5 -4
- dagster_airbyte/asset_defs.py +78 -31
- dagster_airbyte/components/__init__.py +0 -0
- dagster_airbyte/components/workspace_component/__init__.py +0 -0
- dagster_airbyte/components/workspace_component/component.py +433 -0
- dagster_airbyte/components/workspace_component/scaffolder.py +30 -0
- dagster_airbyte/legacy_resources.py +826 -0
- dagster_airbyte/managed/reconciliation.py +9 -7
- dagster_airbyte/ops.py +2 -1
- dagster_airbyte/resources.py +591 -937
- dagster_airbyte/translator.py +20 -1
- dagster_airbyte/utils.py +1 -1
- dagster_airbyte/version.py +1 -1
- {dagster_airbyte-0.26.18.dist-info → dagster_airbyte-0.28.3.dist-info}/METADATA +5 -5
- dagster_airbyte-0.28.3.dist-info/RECORD +28 -0
- {dagster_airbyte-0.26.18.dist-info → dagster_airbyte-0.28.3.dist-info}/entry_points.txt +3 -0
- dagster_airbyte-0.26.18.dist-info/RECORD +0 -23
- {dagster_airbyte-0.26.18.dist-info → dagster_airbyte-0.28.3.dist-info}/WHEEL +0 -0
- {dagster_airbyte-0.26.18.dist-info → dagster_airbyte-0.28.3.dist-info}/licenses/LICENSE +0 -0
- {dagster_airbyte-0.26.18.dist-info → dagster_airbyte-0.28.3.dist-info}/top_level.txt +0 -0
dagster_airbyte/__init__.py
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
from dagster_shared.libraries import DagsterLibraryRegistry
|
|
2
2
|
|
|
3
|
+
from dagster_airbyte.components.workspace_component.component import (
|
|
4
|
+
AirbyteCloudWorkspaceComponent as AirbyteCloudWorkspaceComponent,
|
|
5
|
+
AirbyteWorkspaceComponent as AirbyteWorkspaceComponent,
|
|
6
|
+
)
|
|
7
|
+
|
|
3
8
|
try:
|
|
4
9
|
from dagster_airbyte.managed import (
|
|
5
10
|
AirbyteConnection as AirbyteConnection,
|
|
@@ -20,13 +25,17 @@ from dagster_airbyte.asset_defs import (
|
|
|
20
25
|
build_airbyte_assets_definitions as build_airbyte_assets_definitions,
|
|
21
26
|
load_assets_from_airbyte_instance as load_assets_from_airbyte_instance,
|
|
22
27
|
)
|
|
23
|
-
from dagster_airbyte.
|
|
24
|
-
from dagster_airbyte.resources import (
|
|
28
|
+
from dagster_airbyte.legacy_resources import (
|
|
25
29
|
AirbyteCloudResource as AirbyteCloudResource,
|
|
26
|
-
AirbyteCloudWorkspace as AirbyteCloudWorkspace,
|
|
27
30
|
AirbyteResource as AirbyteResource,
|
|
28
31
|
airbyte_cloud_resource as airbyte_cloud_resource,
|
|
29
32
|
airbyte_resource as airbyte_resource,
|
|
33
|
+
)
|
|
34
|
+
from dagster_airbyte.ops import airbyte_sync_op as airbyte_sync_op
|
|
35
|
+
from dagster_airbyte.resources import (
|
|
36
|
+
AirbyteCloudWorkspace as AirbyteCloudWorkspace,
|
|
37
|
+
AirbyteWorkspace as AirbyteWorkspace,
|
|
38
|
+
load_airbyte_asset_specs as load_airbyte_asset_specs,
|
|
30
39
|
load_airbyte_cloud_asset_specs as load_airbyte_cloud_asset_specs,
|
|
31
40
|
)
|
|
32
41
|
from dagster_airbyte.translator import (
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
from
|
|
1
|
+
from collections.abc import Callable
|
|
2
|
+
from typing import Any, Optional, Union
|
|
2
3
|
|
|
3
4
|
from dagster import AssetsDefinition, multi_asset
|
|
4
5
|
from dagster._annotations import beta
|
|
5
6
|
from dagster._core.errors import DagsterInvariantViolationError
|
|
6
7
|
|
|
7
|
-
from dagster_airbyte.resources import AirbyteCloudWorkspace
|
|
8
|
+
from dagster_airbyte.resources import AirbyteCloudWorkspace, AirbyteWorkspace
|
|
8
9
|
from dagster_airbyte.translator import AirbyteMetadataSet, DagsterAirbyteTranslator
|
|
9
10
|
|
|
10
11
|
|
|
@@ -12,7 +13,7 @@ from dagster_airbyte.translator import AirbyteMetadataSet, DagsterAirbyteTransla
|
|
|
12
13
|
def airbyte_assets(
|
|
13
14
|
*,
|
|
14
15
|
connection_id: str,
|
|
15
|
-
workspace: AirbyteCloudWorkspace,
|
|
16
|
+
workspace: Union[AirbyteWorkspace, AirbyteCloudWorkspace],
|
|
16
17
|
name: Optional[str] = None,
|
|
17
18
|
group_name: Optional[str] = None,
|
|
18
19
|
dagster_airbyte_translator: Optional[DagsterAirbyteTranslator] = None,
|
|
@@ -21,7 +22,7 @@ def airbyte_assets(
|
|
|
21
22
|
|
|
22
23
|
Args:
|
|
23
24
|
connection_id (str): The Airbyte Connection ID.
|
|
24
|
-
workspace (AirbyteCloudWorkspace): The Airbyte workspace to fetch assets from.
|
|
25
|
+
workspace (Union[AirbyteWorkspace, AirbyteCloudWorkspace]): The Airbyte workspace to fetch assets from.
|
|
25
26
|
name (Optional[str], optional): The name of the op.
|
|
26
27
|
group_name (Optional[str], optional): The name of the asset group.
|
|
27
28
|
dagster_airbyte_translator (Optional[DagsterAirbyteTranslator], optional): The translator to use
|
dagster_airbyte/asset_defs.py
CHANGED
|
@@ -2,10 +2,10 @@ import hashlib
|
|
|
2
2
|
import inspect
|
|
3
3
|
import os
|
|
4
4
|
from abc import abstractmethod
|
|
5
|
-
from collections.abc import Iterable, Mapping, Sequence
|
|
5
|
+
from collections.abc import Callable, Iterable, Mapping, Sequence
|
|
6
6
|
from functools import partial
|
|
7
7
|
from itertools import chain
|
|
8
|
-
from typing import Any,
|
|
8
|
+
from typing import Any, NamedTuple, Optional, Union, cast
|
|
9
9
|
|
|
10
10
|
import yaml
|
|
11
11
|
from dagster import (
|
|
@@ -13,16 +13,16 @@ from dagster import (
|
|
|
13
13
|
AssetKey,
|
|
14
14
|
AssetOut,
|
|
15
15
|
AutoMaterializePolicy,
|
|
16
|
-
|
|
16
|
+
LegacyFreshnessPolicy,
|
|
17
17
|
Nothing,
|
|
18
18
|
Output,
|
|
19
19
|
ResourceDefinition,
|
|
20
20
|
SourceAsset,
|
|
21
21
|
_check as check,
|
|
22
22
|
)
|
|
23
|
-
from dagster._annotations import beta
|
|
23
|
+
from dagster._annotations import beta, hidden_param, only_allow_hidden_params_in_kwargs, superseded
|
|
24
24
|
from dagster._core.definitions import AssetsDefinition, multi_asset
|
|
25
|
-
from dagster._core.definitions.
|
|
25
|
+
from dagster._core.definitions.assets.definition.cacheable_assets_definition import (
|
|
26
26
|
AssetsDefinitionCacheableData,
|
|
27
27
|
CacheableAssetsDefinition,
|
|
28
28
|
)
|
|
@@ -34,13 +34,17 @@ from dagster._core.execution.context.init import build_init_resource_context
|
|
|
34
34
|
from dagster._utils.merger import merge_dicts
|
|
35
35
|
|
|
36
36
|
from dagster_airbyte.asset_decorator import airbyte_assets
|
|
37
|
-
from dagster_airbyte.
|
|
37
|
+
from dagster_airbyte.legacy_resources import (
|
|
38
38
|
AirbyteCloudResource,
|
|
39
|
-
AirbyteCloudWorkspace,
|
|
40
39
|
AirbyteResource,
|
|
41
40
|
BaseAirbyteResource,
|
|
42
41
|
)
|
|
43
|
-
from dagster_airbyte.
|
|
42
|
+
from dagster_airbyte.resources import AirbyteCloudWorkspace, AirbyteWorkspace, BaseAirbyteWorkspace
|
|
43
|
+
from dagster_airbyte.translator import (
|
|
44
|
+
AirbyteConnection,
|
|
45
|
+
AirbyteMetadataSet,
|
|
46
|
+
DagsterAirbyteTranslator,
|
|
47
|
+
)
|
|
44
48
|
from dagster_airbyte.types import AirbyteTableMetadata
|
|
45
49
|
from dagster_airbyte.utils import (
|
|
46
50
|
clean_name,
|
|
@@ -68,7 +72,7 @@ def _build_airbyte_asset_defn_metadata(
|
|
|
68
72
|
group_name: Optional[str] = None,
|
|
69
73
|
io_manager_key: Optional[str] = None,
|
|
70
74
|
schema_by_table_name: Optional[Mapping[str, TableSchema]] = None,
|
|
71
|
-
|
|
75
|
+
legacy_freshness_policy: Optional[LegacyFreshnessPolicy] = None,
|
|
72
76
|
auto_materialize_policy: Optional[AutoMaterializePolicy] = None,
|
|
73
77
|
) -> AssetsDefinitionCacheableData:
|
|
74
78
|
asset_key_prefix = (
|
|
@@ -157,8 +161,10 @@ def _build_airbyte_asset_defn_metadata(
|
|
|
157
161
|
for table in tables
|
|
158
162
|
}
|
|
159
163
|
),
|
|
160
|
-
|
|
161
|
-
{output:
|
|
164
|
+
legacy_freshness_policies_by_output_name=(
|
|
165
|
+
{output: legacy_freshness_policy for output in outputs}
|
|
166
|
+
if legacy_freshness_policy
|
|
167
|
+
else None
|
|
162
168
|
),
|
|
163
169
|
auto_materialize_policies_by_output_name=(
|
|
164
170
|
{output: auto_materialize_policy for output in outputs}
|
|
@@ -198,9 +204,9 @@ def _build_airbyte_assets_from_metadata(
|
|
|
198
204
|
else None
|
|
199
205
|
),
|
|
200
206
|
io_manager_key=io_manager_key,
|
|
201
|
-
|
|
202
|
-
assets_defn_meta.
|
|
203
|
-
if assets_defn_meta.
|
|
207
|
+
legacy_freshness_policy=(
|
|
208
|
+
assets_defn_meta.legacy_freshness_policies_by_output_name.get(k)
|
|
209
|
+
if assets_defn_meta.legacy_freshness_policies_by_output_name
|
|
204
210
|
else None
|
|
205
211
|
),
|
|
206
212
|
dagster_type=Nothing,
|
|
@@ -245,6 +251,14 @@ def _build_airbyte_assets_from_metadata(
|
|
|
245
251
|
return _assets
|
|
246
252
|
|
|
247
253
|
|
|
254
|
+
@hidden_param(
|
|
255
|
+
param="legacy_freshness_policy",
|
|
256
|
+
breaking_version="1.13.0",
|
|
257
|
+
)
|
|
258
|
+
@hidden_param(
|
|
259
|
+
param="auto_materialize_policy",
|
|
260
|
+
breaking_version="1.10.0",
|
|
261
|
+
)
|
|
248
262
|
def build_airbyte_assets(
|
|
249
263
|
connection_id: str,
|
|
250
264
|
destination_tables: Sequence[str],
|
|
@@ -256,9 +270,8 @@ def build_airbyte_assets(
|
|
|
256
270
|
deps: Optional[Iterable[Union[CoercibleToAssetKey, AssetsDefinition, SourceAsset]]] = None,
|
|
257
271
|
upstream_assets: Optional[set[AssetKey]] = None,
|
|
258
272
|
schema_by_table_name: Optional[Mapping[str, TableSchema]] = None,
|
|
259
|
-
freshness_policy: Optional[FreshnessPolicy] = None,
|
|
260
273
|
stream_to_asset_map: Optional[Mapping[str, str]] = None,
|
|
261
|
-
|
|
274
|
+
**kwargs,
|
|
262
275
|
) -> Sequence[AssetsDefinition]:
|
|
263
276
|
"""Builds a set of assets representing the tables created by an Airbyte sync operation.
|
|
264
277
|
|
|
@@ -278,11 +291,13 @@ def build_airbyte_assets(
|
|
|
278
291
|
deps (Optional[Sequence[Union[AssetsDefinition, SourceAsset, str, AssetKey]]]):
|
|
279
292
|
A list of assets to add as sources.
|
|
280
293
|
upstream_assets (Optional[Set[AssetKey]]): Deprecated, use deps instead. A list of assets to add as sources.
|
|
281
|
-
freshness_policy (Optional[FreshnessPolicy]): A freshness policy to apply to the assets
|
|
282
294
|
stream_to_asset_map (Optional[Mapping[str, str]]): A mapping of an Airbyte stream name to a Dagster asset.
|
|
283
295
|
This allows the use of the "prefix" setting in Airbyte with special characters that aren't valid asset names.
|
|
284
|
-
auto_materialize_policy (Optional[AutoMaterializePolicy]): An auto materialization policy to apply to the assets.
|
|
285
296
|
"""
|
|
297
|
+
only_allow_hidden_params_in_kwargs(build_airbyte_assets, kwargs)
|
|
298
|
+
legacy_freshness_policy = kwargs.get("legacy_freshness_policy")
|
|
299
|
+
auto_materialize_policy = kwargs.get("auto_materialize_policy")
|
|
300
|
+
|
|
286
301
|
if upstream_assets is not None and deps is not None:
|
|
287
302
|
raise DagsterInvalidDefinitionError(
|
|
288
303
|
"Cannot specify both deps and upstream_assets to build_airbyte_assets. Use only deps"
|
|
@@ -325,7 +340,7 @@ def build_airbyte_assets(
|
|
|
325
340
|
),
|
|
326
341
|
}
|
|
327
342
|
),
|
|
328
|
-
|
|
343
|
+
legacy_freshness_policy=legacy_freshness_policy,
|
|
329
344
|
auto_materialize_policy=auto_materialize_policy,
|
|
330
345
|
)
|
|
331
346
|
for table in tables
|
|
@@ -588,7 +603,7 @@ class AirbyteCoreCacheableAssetsDefinition(CacheableAssetsDefinition):
|
|
|
588
603
|
connection_filter: Optional[Callable[[AirbyteConnectionMetadata], bool]],
|
|
589
604
|
connection_to_asset_key_fn: Optional[Callable[[AirbyteConnectionMetadata, str], AssetKey]],
|
|
590
605
|
connection_to_freshness_policy_fn: Optional[
|
|
591
|
-
Callable[[AirbyteConnectionMetadata], Optional[
|
|
606
|
+
Callable[[AirbyteConnectionMetadata], Optional[LegacyFreshnessPolicy]]
|
|
592
607
|
],
|
|
593
608
|
connection_to_auto_materialize_policy_fn: Optional[
|
|
594
609
|
Callable[[AirbyteConnectionMetadata], Optional[AutoMaterializePolicy]]
|
|
@@ -671,7 +686,7 @@ class AirbyteCoreCacheableAssetsDefinition(CacheableAssetsDefinition):
|
|
|
671
686
|
),
|
|
672
687
|
schema_by_table_name=schema_by_table_name,
|
|
673
688
|
table_to_asset_key_fn=table_to_asset_key,
|
|
674
|
-
|
|
689
|
+
legacy_freshness_policy=self._connection_to_freshness_policy_fn(connection),
|
|
675
690
|
auto_materialize_policy=self._connection_to_auto_materialize_policy_fn(connection),
|
|
676
691
|
)
|
|
677
692
|
|
|
@@ -704,7 +719,7 @@ class AirbyteInstanceCacheableAssetsDefinition(AirbyteCoreCacheableAssetsDefinit
|
|
|
704
719
|
connection_filter: Optional[Callable[[AirbyteConnectionMetadata], bool]],
|
|
705
720
|
connection_to_asset_key_fn: Optional[Callable[[AirbyteConnectionMetadata, str], AssetKey]],
|
|
706
721
|
connection_to_freshness_policy_fn: Optional[
|
|
707
|
-
Callable[[AirbyteConnectionMetadata], Optional[
|
|
722
|
+
Callable[[AirbyteConnectionMetadata], Optional[LegacyFreshnessPolicy]]
|
|
708
723
|
],
|
|
709
724
|
connection_to_auto_materialize_policy_fn: Optional[
|
|
710
725
|
Callable[[AirbyteConnectionMetadata], Optional[AutoMaterializePolicy]]
|
|
@@ -818,7 +833,7 @@ class AirbyteYAMLCacheableAssetsDefinition(AirbyteCoreCacheableAssetsDefinition)
|
|
|
818
833
|
connection_directories: Optional[Sequence[str]],
|
|
819
834
|
connection_to_asset_key_fn: Optional[Callable[[AirbyteConnectionMetadata, str], AssetKey]],
|
|
820
835
|
connection_to_freshness_policy_fn: Optional[
|
|
821
|
-
Callable[[AirbyteConnectionMetadata], Optional[
|
|
836
|
+
Callable[[AirbyteConnectionMetadata], Optional[LegacyFreshnessPolicy]]
|
|
822
837
|
],
|
|
823
838
|
connection_to_auto_materialize_policy_fn: Optional[
|
|
824
839
|
Callable[[AirbyteConnectionMetadata], Optional[AutoMaterializePolicy]]
|
|
@@ -894,6 +909,11 @@ class AirbyteYAMLCacheableAssetsDefinition(AirbyteCoreCacheableAssetsDefinition)
|
|
|
894
909
|
return output_connections
|
|
895
910
|
|
|
896
911
|
|
|
912
|
+
@superseded(
|
|
913
|
+
additional_warn_text=(
|
|
914
|
+
"If you are using Airbyte 1.6.0 or higher, please see the migration guide: https://docs.dagster.io/integrations/libraries/airbyte/migration-guide"
|
|
915
|
+
)
|
|
916
|
+
)
|
|
897
917
|
def load_assets_from_airbyte_instance(
|
|
898
918
|
airbyte: Union[AirbyteResource, ResourceDefinition],
|
|
899
919
|
workspace_id: Optional[str] = None,
|
|
@@ -910,7 +930,7 @@ def load_assets_from_airbyte_instance(
|
|
|
910
930
|
Callable[[AirbyteConnectionMetadata, str], AssetKey]
|
|
911
931
|
] = None,
|
|
912
932
|
connection_to_freshness_policy_fn: Optional[
|
|
913
|
-
Callable[[AirbyteConnectionMetadata], Optional[
|
|
933
|
+
Callable[[AirbyteConnectionMetadata], Optional[LegacyFreshnessPolicy]]
|
|
914
934
|
] = None,
|
|
915
935
|
connection_to_auto_materialize_policy_fn: Optional[
|
|
916
936
|
Callable[[AirbyteConnectionMetadata], Optional[AutoMaterializePolicy]]
|
|
@@ -1033,16 +1053,19 @@ def load_assets_from_airbyte_instance(
|
|
|
1033
1053
|
@beta
|
|
1034
1054
|
def build_airbyte_assets_definitions(
|
|
1035
1055
|
*,
|
|
1036
|
-
workspace: AirbyteCloudWorkspace,
|
|
1056
|
+
workspace: Union[AirbyteWorkspace, AirbyteCloudWorkspace],
|
|
1037
1057
|
dagster_airbyte_translator: Optional[DagsterAirbyteTranslator] = None,
|
|
1058
|
+
connection_selector_fn: Optional[Callable[[AirbyteConnection], bool]] = None,
|
|
1038
1059
|
) -> Sequence[AssetsDefinition]:
|
|
1039
1060
|
"""The list of AssetsDefinition for all connections in the Airbyte workspace.
|
|
1040
1061
|
|
|
1041
1062
|
Args:
|
|
1042
|
-
workspace (AirbyteCloudWorkspace): The Airbyte workspace to fetch assets from.
|
|
1063
|
+
workspace (Union[AirbyteWorkspace, AirbyteCloudWorkspace]): The Airbyte workspace to fetch assets from.
|
|
1043
1064
|
dagster_airbyte_translator (Optional[DagsterAirbyteTranslator], optional): The translator to use
|
|
1044
1065
|
to convert Airbyte content into :py:class:`dagster.AssetSpec`.
|
|
1045
1066
|
Defaults to :py:class:`DagsterAirbyteTranslator`.
|
|
1067
|
+
connection_selector_fn (Optional[Callable[[AirbyteConnection], bool]]): A function that allows for filtering
|
|
1068
|
+
which Airbyte connection assets are created for.
|
|
1046
1069
|
|
|
1047
1070
|
Returns:
|
|
1048
1071
|
List[AssetsDefinition]: The list of AssetsDefinition for all connections in the Airbyte workspace.
|
|
@@ -1062,7 +1085,6 @@ def build_airbyte_assets_definitions(
|
|
|
1062
1085
|
client_secret=dg.EnvVar("AIRBYTE_CLOUD_CLIENT_SECRET"),
|
|
1063
1086
|
)
|
|
1064
1087
|
|
|
1065
|
-
|
|
1066
1088
|
airbyte_assets = build_airbyte_assets_definitions(workspace=workspace)
|
|
1067
1089
|
|
|
1068
1090
|
defs = dg.Definitions(
|
|
@@ -1096,21 +1118,46 @@ def build_airbyte_assets_definitions(
|
|
|
1096
1118
|
client_secret=dg.EnvVar("AIRBYTE_CLOUD_CLIENT_SECRET"),
|
|
1097
1119
|
)
|
|
1098
1120
|
|
|
1099
|
-
|
|
1100
1121
|
airbyte_assets = build_airbyte_assets_definitions(
|
|
1101
1122
|
workspace=workspace,
|
|
1102
1123
|
dagster_airbyte_translator=CustomDagsterAirbyteTranslator()
|
|
1103
1124
|
)
|
|
1104
1125
|
|
|
1126
|
+
defs = dg.Definitions(
|
|
1127
|
+
assets=airbyte_assets,
|
|
1128
|
+
resources={"airbyte": airbyte_workspace},
|
|
1129
|
+
)
|
|
1130
|
+
|
|
1131
|
+
Filter connections by name:
|
|
1132
|
+
|
|
1133
|
+
.. code-block:: python
|
|
1134
|
+
|
|
1135
|
+
from dagster_airbyte import AirbyteCloudWorkspace, build_airbyte_assets_definitions
|
|
1136
|
+
|
|
1137
|
+
import dagster as dg
|
|
1138
|
+
|
|
1139
|
+
airbyte_workspace = AirbyteCloudWorkspace(
|
|
1140
|
+
workspace_id=dg.EnvVar("AIRBYTE_CLOUD_WORKSPACE_ID"),
|
|
1141
|
+
client_id=dg.EnvVar("AIRBYTE_CLOUD_CLIENT_ID"),
|
|
1142
|
+
client_secret=dg.EnvVar("AIRBYTE_CLOUD_CLIENT_SECRET"),
|
|
1143
|
+
)
|
|
1144
|
+
|
|
1145
|
+
airbyte_assets = build_airbyte_assets_definitions(
|
|
1146
|
+
workspace=workspace,
|
|
1147
|
+
connection_selector_fn=lambda connection: connection.name in ["connection1", "connection2"]
|
|
1148
|
+
)
|
|
1149
|
+
|
|
1105
1150
|
defs = dg.Definitions(
|
|
1106
1151
|
assets=airbyte_assets,
|
|
1107
1152
|
resources={"airbyte": airbyte_workspace},
|
|
1108
1153
|
)
|
|
1109
1154
|
"""
|
|
1110
1155
|
dagster_airbyte_translator = dagster_airbyte_translator or DagsterAirbyteTranslator()
|
|
1156
|
+
connection_selector_fn = connection_selector_fn or (lambda connection: True)
|
|
1111
1157
|
|
|
1112
1158
|
all_asset_specs = workspace.load_asset_specs(
|
|
1113
|
-
dagster_airbyte_translator=dagster_airbyte_translator
|
|
1159
|
+
dagster_airbyte_translator=dagster_airbyte_translator,
|
|
1160
|
+
connection_selector_fn=connection_selector_fn,
|
|
1114
1161
|
)
|
|
1115
1162
|
|
|
1116
1163
|
connections = {
|
|
@@ -1127,10 +1174,10 @@ def build_airbyte_assets_definitions(
|
|
|
1127
1174
|
@airbyte_assets(
|
|
1128
1175
|
connection_id=connection_id,
|
|
1129
1176
|
workspace=workspace,
|
|
1130
|
-
name=clean_name(connection_name),
|
|
1177
|
+
name=f"airbyte_{clean_name(connection_name)}",
|
|
1131
1178
|
dagster_airbyte_translator=dagster_airbyte_translator,
|
|
1132
1179
|
)
|
|
1133
|
-
def _asset_fn(context: AssetExecutionContext, airbyte:
|
|
1180
|
+
def _asset_fn(context: AssetExecutionContext, airbyte: BaseAirbyteWorkspace):
|
|
1134
1181
|
yield from airbyte.sync_and_poll(context=context)
|
|
1135
1182
|
|
|
1136
1183
|
_asset_fns.append(_asset_fn)
|
|
File without changes
|
|
File without changes
|