Skip to content

Commit ec3f647

Browse files
author
Radosław Dziadosz
committed
Add dbt-cloud integration command to dp cli
# remove resolving jinja / env vars
1 parent 464321c commit ec3f647

File tree

3 files changed

+6
-28
lines changed

3 files changed

+6
-28
lines changed

data_pipelines_cli/cli_commands/dbtcloud.py

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
import json
2-
import sys
32
from typing import Any, Dict
43

54
import click
65

76
from data_pipelines_cli.dbt_cloud_api_client import DbtCloudApiClient
87
from ..cli_constants import BUILD_DIR
98
from ..cli_utils import echo_info
10-
from ..config_generation import read_dictionary_from_config_directory, generate_profiles_yml
11-
from ..dbt_utils import _dump_dbt_vars_from_configs_to_string, run_dbt_command
9+
from ..config_generation import read_dictionary_from_config_directory
10+
from ..dbt_utils import _dump_dbt_vars_from_configs_to_string
1211

1312

1413
def read_dbtcloud_config() -> Dict[str, Any]:
@@ -35,26 +34,6 @@ def read_bigquery_config(env: str) -> Dict[str, Any]:
3534
return read_dictionary_from_config_directory(BUILD_DIR.joinpath("dag"), env, "bigquery.yml")
3635

3736

38-
def resolve_env_var(unresolved_text, env):
39-
"""
40-
Resolves environment variables and jinja in the given text using the dbt show command.
41-
:param unresolved_text: Text to be resolved
42-
:param env: Environment dir name
43-
:return: Parsed text
44-
"""
45-
profiles_path = generate_profiles_yml(env, False)
46-
dbt_command_result_bytes = run_dbt_command(
47-
("show", "--inline", f"SELECT '{unresolved_text}' AS parsed", "--output", "json"),
48-
env,
49-
profiles_path,
50-
log_format_json=True,
51-
capture_output=True)
52-
decoded_output = dbt_command_result_bytes.stdout.decode(encoding=sys.stdout.encoding or "utf-8")
53-
for line in map(json.loads, decoded_output.splitlines()):
54-
if line.get('data', {}).get('node_name') == "inline_query":
55-
return json.loads(line["data"]["preview"])[0]["parsed"]
56-
57-
5837
@click.command(name="configure-cloud", help="Create dbt Cloud project")
5938
@click.option(
6039
"--account_id",
@@ -106,8 +85,7 @@ def configure_cloud_command(
10685
environments_projects = {}
10786
for environment in dbtcloud_config["environments"]:
10887
bq_config = read_bigquery_config(environment["config_dir"])
109-
environments_projects[environment["name"]] = resolve_env_var(bq_config["project"],
110-
environment["config_dir"])
88+
environments_projects[environment["name"]] = bq_config["project"]
11189
environment_id = create_environment(client, environment, bq_config["dataset"],
11290
dbtcloud_project_id)
11391
if environment["type"] == "deployment":

data_pipelines_cli/cli_commands/publish.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55

66
import click
77
import yaml
8+
from dbt.contracts.graph.compiled import ManifestNode
89
from dbt.contracts.graph.manifest import Manifest
9-
from dbt.contracts.graph.nodes import ColumnInfo
10-
from dbt.contracts.graph.nodes import ManifestNode
10+
from dbt.contracts.graph.parsed import ColumnInfo
1111

1212
from ..cli_constants import BUILD_DIR
1313
from ..cli_utils import echo_info, echo_warning

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
"fsspec==2022.11.0",
1717
"packaging==21.3",
1818
"colorama==0.4.5",
19-
"dbt-core==1.5.0",
19+
"dbt-core==1.3.1",
2020
]
2121

2222
EXTRA_FILESYSTEMS_REQUIRE = {

0 commit comments

Comments
 (0)