airflow-dbt-python 3.0.3__tar.gz → 3.1.0__tar.gz
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.
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/PKG-INFO +2 -2
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/README.md +1 -1
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/__version__.py +1 -1
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/hooks/target.py +35 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/utils/configs.py +25 -2
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/utils/version.py +4 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python.egg-info/PKG-INFO +2 -2
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/pyproject.toml +1 -1
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/LICENSE +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/__init__.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/hooks/__init__.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/hooks/dbt.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/hooks/fs/__init__.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/hooks/fs/gcs.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/hooks/fs/git.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/hooks/fs/local.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/hooks/fs/s3.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/operators/__init__.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/operators/dbt.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/utils/__init__.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/utils/enums.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/utils/env.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/utils/url.py +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python.egg-info/SOURCES.txt +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python.egg-info/dependency_links.txt +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python.egg-info/requires.txt +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python.egg-info/top_level.txt +0 -0
- {airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: airflow-dbt-python
|
|
3
|
-
Version: 3.0
|
|
3
|
+
Version: 3.1.0
|
|
4
4
|
Summary: A collection of Airflow operators, hooks, and utilities to execute dbt commands
|
|
5
5
|
Author-email: Tomás Farías Santana <tomas@tomasfarias.dev>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -51,7 +51,7 @@ Dynamic: license-file
|
|
|
51
51
|
|
|
52
52
|
[](https://pypi.org/project/airflow-dbt-python/)
|
|
53
53
|
[](https://github.com/tomasfarias/airflow-dbt-python/actions)
|
|
54
|
-
[](https://github.com/astral-sh/ruff)
|
|
55
55
|
[](https://github.com/tomasfarias/airflow-dbt-python/actions)
|
|
56
56
|
[](https://airflow-dbt-python.readthedocs.io/en/latest/?badge=latest)
|
|
57
57
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://pypi.org/project/airflow-dbt-python/)
|
|
4
4
|
[](https://github.com/tomasfarias/airflow-dbt-python/actions)
|
|
5
|
-
[](https://github.com/astral-sh/ruff)
|
|
6
6
|
[](https://github.com/tomasfarias/airflow-dbt-python/actions)
|
|
7
7
|
[](https://airflow-dbt-python.readthedocs.io/en/latest/?badge=latest)
|
|
8
8
|
|
|
@@ -492,3 +492,38 @@ class DbtSparkHook(DbtConnectionHook):
|
|
|
492
492
|
),
|
|
493
493
|
]
|
|
494
494
|
conn_extra_params = []
|
|
495
|
+
|
|
496
|
+
|
|
497
|
+
class DbtTrinoHook(DbtConnectionHook):
|
|
498
|
+
"""A hook to interact with dbt using a Trino connection."""
|
|
499
|
+
|
|
500
|
+
conn_type = "trino"
|
|
501
|
+
hook_name = "dbt Trino Hook"
|
|
502
|
+
airflow_conn_types = (conn_type,)
|
|
503
|
+
|
|
504
|
+
conn_params = [
|
|
505
|
+
"host",
|
|
506
|
+
DbtConnectionParam("schema", default="public"),
|
|
507
|
+
DbtConnectionParam("login", "user"),
|
|
508
|
+
"password",
|
|
509
|
+
DbtConnectionParam("port", default=443),
|
|
510
|
+
]
|
|
511
|
+
|
|
512
|
+
conn_extra_params = [
|
|
513
|
+
DbtConnectionParam("type", default="trino"),
|
|
514
|
+
DbtConnectionParam("method", default="none"),
|
|
515
|
+
DbtConnectionParam("http_scheme", default="https"),
|
|
516
|
+
DbtConnectionParam("verify", default=True),
|
|
517
|
+
DbtConnectionParam("database", "catalog", "hive"),
|
|
518
|
+
"catalog",
|
|
519
|
+
"host",
|
|
520
|
+
"port",
|
|
521
|
+
DbtConnectionParam("user", "user"),
|
|
522
|
+
"password",
|
|
523
|
+
"schema",
|
|
524
|
+
"session_properties",
|
|
525
|
+
"http_headers",
|
|
526
|
+
"role",
|
|
527
|
+
"client_tags",
|
|
528
|
+
"source",
|
|
529
|
+
]
|
|
@@ -39,7 +39,10 @@ from dbt.task.test import TestTask
|
|
|
39
39
|
from dbt.tracking import initialize_from_flags
|
|
40
40
|
|
|
41
41
|
from airflow_dbt_python.utils.enums import FromStrEnum, LogFormat, Output
|
|
42
|
-
from airflow_dbt_python.utils.version import
|
|
42
|
+
from airflow_dbt_python.utils.version import (
|
|
43
|
+
DBT_INSTALLED_GTE_1_9,
|
|
44
|
+
DBT_INSTALLED_GTE_1_10_7,
|
|
45
|
+
)
|
|
43
46
|
|
|
44
47
|
|
|
45
48
|
def parse_yaml_args(args: Optional[Union[str, dict[str, Any]]]) -> dict[str, Any]:
|
|
@@ -360,7 +363,11 @@ class BaseConfig:
|
|
|
360
363
|
|
|
361
364
|
runtime_config = self.create_runtime_config(project, profile)
|
|
362
365
|
|
|
363
|
-
if
|
|
366
|
+
if (
|
|
367
|
+
issubclass(self.dbt_task, ConfiguredTask)
|
|
368
|
+
and runtime_config
|
|
369
|
+
and not DBT_INSTALLED_GTE_1_10_7
|
|
370
|
+
):
|
|
364
371
|
manifest = parse_manifest(
|
|
365
372
|
runtime_config,
|
|
366
373
|
write_perf_info=write_perf_info,
|
|
@@ -370,6 +377,22 @@ class BaseConfig:
|
|
|
370
377
|
task: BaseTask = self.dbt_task(
|
|
371
378
|
args=local_flags, config=runtime_config, manifest=manifest
|
|
372
379
|
)
|
|
380
|
+
elif (
|
|
381
|
+
issubclass(self.dbt_task, ConfiguredTask)
|
|
382
|
+
and runtime_config
|
|
383
|
+
and DBT_INSTALLED_GTE_1_10_7
|
|
384
|
+
):
|
|
385
|
+
manifest = parse_manifest(
|
|
386
|
+
runtime_config,
|
|
387
|
+
write_perf_info=write_perf_info,
|
|
388
|
+
write=False,
|
|
389
|
+
write_json=False,
|
|
390
|
+
# TODO: Support for catalog integrations
|
|
391
|
+
active_integrations=[], # type: ignore
|
|
392
|
+
)
|
|
393
|
+
task = self.dbt_task(
|
|
394
|
+
args=local_flags, config=runtime_config, manifest=manifest
|
|
395
|
+
)
|
|
373
396
|
elif issubclass(self.dbt_task, DepsTask):
|
|
374
397
|
task = self.dbt_task(args=local_flags, project=project)
|
|
375
398
|
elif issubclass(self.dbt_task, DebugTask):
|
|
@@ -16,11 +16,15 @@ DBT_1_8 = VersionSpecifier(
|
|
|
16
16
|
DBT_1_9 = VersionSpecifier(
|
|
17
17
|
major="1", minor="9", patch="0", matcher=Matchers.GREATER_THAN_OR_EQUAL
|
|
18
18
|
)
|
|
19
|
+
DBT_1_10_7 = VersionSpecifier(
|
|
20
|
+
major="1", minor="10", patch="7", matcher=Matchers.GREATER_THAN_OR_EQUAL
|
|
21
|
+
)
|
|
19
22
|
DBT_2_0 = VersionSpecifier(
|
|
20
23
|
major="2", minor="0", patch="0", matcher=Matchers.GREATER_THAN_OR_EQUAL
|
|
21
24
|
)
|
|
22
25
|
|
|
23
26
|
DBT_INSTALLED_GTE_1_9 = installed.compare(DBT_1_9) == 1
|
|
27
|
+
DBT_INSTALLED_GTE_1_10_7 = installed.compare(DBT_1_10_7) == 1
|
|
24
28
|
|
|
25
29
|
DBT_INSTALLED_1_8 = DBT_1_8 < installed < DBT_1_9
|
|
26
30
|
DBT_INSTALLED_1_9 = DBT_1_9 < installed < DBT_2_0
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: airflow-dbt-python
|
|
3
|
-
Version: 3.0
|
|
3
|
+
Version: 3.1.0
|
|
4
4
|
Summary: A collection of Airflow operators, hooks, and utilities to execute dbt commands
|
|
5
5
|
Author-email: Tomás Farías Santana <tomas@tomasfarias.dev>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -51,7 +51,7 @@ Dynamic: license-file
|
|
|
51
51
|
|
|
52
52
|
[](https://pypi.org/project/airflow-dbt-python/)
|
|
53
53
|
[](https://github.com/tomasfarias/airflow-dbt-python/actions)
|
|
54
|
-
[](https://github.com/astral-sh/ruff)
|
|
55
55
|
[](https://github.com/tomasfarias/airflow-dbt-python/actions)
|
|
56
56
|
[](https://airflow-dbt-python.readthedocs.io/en/latest/?badge=latest)
|
|
57
57
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "airflow-dbt-python"
|
|
3
|
-
version = "3.0
|
|
3
|
+
version = "3.1.0"
|
|
4
4
|
description = "A collection of Airflow operators, hooks, and utilities to execute dbt commands"
|
|
5
5
|
authors = [{ name = "Tomás Farías Santana", email = "tomas@tomasfarias.dev" }]
|
|
6
6
|
license = "MIT"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/hooks/fs/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python/operators/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python.egg-info/requires.txt
RENAMED
|
File without changes
|
{airflow_dbt_python-3.0.3 → airflow_dbt_python-3.1.0}/airflow_dbt_python.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|