George Pearse
05/12/2022, 9:58 AMGeorge Pearse
05/12/2022, 10:01 AMGeorge Pearse
05/12/2022, 10:03 AMyuhan
05/12/2022, 6:04 PMGeorge Pearse
05/12/2022, 6:08 PMyuhan
05/12/2022, 6:08 PMGeorge Pearse
05/12/2022, 6:09 PMyuhan
05/12/2022, 6:09 PMGeorge Pearse
05/12/2022, 6:09 PMyuhan
05/12/2022, 6:11 PMGeorge Pearse
05/12/2022, 6:13 PMyuhan
05/12/2022, 6:16 PMload_assets_from_dbt_project
and load_assets_from_dbt_manifest
to easily construct asset-based jobs from DBT models directly.George Pearse
05/12/2022, 6:16 PMGeorge Pearse
05/12/2022, 6:41 PManalytics_assets = AssetGroup(
[*dbt_assets],
resource_defs={
"dbt": dbt_cli_resource.configured(DBT_CONFIG),
},
).build_job("Assets")
@repository
def analytics() -> list:
return [analytics_assets]
yuhan
05/12/2022, 6:42 PMGeorge Pearse
05/12/2022, 7:14 PMGeorge Pearse
05/12/2022, 8:02 PMfrom dagster import pipeline
from dagster_dbt import dbt_cli_run
config = {"project-dir": file_relative_path(__file__, 'dbt_project')}
run_all_models = dbt_cli_run.configured(config, name="run_dbt_project")
@pipeline
def my_dbt_pipeline():
run_all_models()
Weirdly I'm getting the error below despite the fact that I'm not specifying dbt anywhere ???
FileNotFoundError: [Errno 2] No such file or directory: 'dbt': 'dbt'
File "/usr/local/lib/python3.7/site-packages/dagster/core/execution/plan/utils.py", line 47, in solid_execution_error_boundary
yield
File "/usr/local/lib/python3.7/site-packages/dagster/utils/__init__.py", line 405, in iterate_with_context
next_output = next(iterator)
File "/usr/local/lib/python3.7/site-packages/dagster/core/execution/plan/compute_generator.py", line 66, in _coerce_solid_compute_fn_to_iterator
for event in _validate_and_coerce_solid_result_to_iterator(result, context, output_defs):
File "/usr/local/lib/python3.7/site-packages/dagster/core/execution/plan/compute_generator.py", line 86, in _validate_and_coerce_solid_result_to_iterator
for event in result:
File "/usr/local/lib/python3.7/site-packages/dagster_dbt/cli/solids.py", line 115, in dbt_cli_run
target_path=context.solid_config["target-path"],
File "/usr/local/lib/python3.7/site-packages/dagster_dbt/cli/utils.py", line 74, in execute_cli
process = subprocess.Popen(command_list, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
File "/usr/local/lib/python3.7/subprocess.py", line 800, in __init__
restore_signals, start_new_session)
File "/usr/local/lib/python3.7/subprocess.py", line 1551, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
yuhan
05/12/2022, 8:05 PMowen
05/12/2022, 8:14 PMfrom dagster_dbt import dbt_cli_resource, dbt_run_op
from dagster import job
my_dbt_resource = dbt_cli_resource.configured(
{"project_dir": "path/to/dbt/project"}
)
@job(resource_defs={"dbt": my_dbt_resource})
def my_dbt_job():
dbt_run_op()
Just to help isolate the source of the issue, might be worth skipping the file_relative_path and hardcoding the project dir.George Pearse
05/12/2022, 8:18 PMowen
05/12/2022, 8:19 PMGeorge Pearse
05/12/2022, 8:21 PMGeorge Pearse
05/12/2022, 8:24 PMGeorge Pearse
05/12/2022, 8:25 PMowen
05/12/2022, 8:29 PMowen
05/12/2022, 8:31 PMDagster Bot
05/12/2022, 8:32 PMGeorge Pearse
05/12/2022, 9:00 PMGeorge Pearse
05/12/2022, 9:01 PMGeorge Pearse
05/15/2022, 3:13 PMGeorge Pearse
05/15/2022, 3:58 PMowen
05/16/2022, 4:19 PMGeorge Pearse
05/16/2022, 4:52 PMowen
05/16/2022, 4:54 PMGeorge Pearse
05/16/2022, 4:59 PMGeorge Pearse
05/16/2022, 4:59 PMGeorge Pearse
05/16/2022, 5:00 PM