Alec Ryan
05/03/2022, 11:56 AMError loading repository location repo.py:FileNotFoundError: [Errno 2] No such file or directory: 'dbt': 'dbt'
Alec Ryan
05/03/2022, 11:56 AMFROM python:3.7-slim
RUN mkdir -p /opt/dagster/dagster_home /opt/dagster/app
RUN mkdir /opt/dagster/app/nhl_elt
RUN mkdir /opt/dagster/app/dbt
RUN pip install dagster dagit dagster-postgres dagster-dbt dagster-aws dagster-snowflake pandas requests
COPY dbt /opt/dagster/app/dbt/
COPY nhl_elt /opt/dagster/app/nhl_elt/
COPY workspace.yaml /opt/dagster/app/
ENV DAGSTER_HOME=/opt/dagster/dagster_home/
COPY dagster.yaml /opt/dagster/dagster_home/
WORKDIR /opt/dagster/app
EXPOSE 3000
ENTRYPOINT ["dagit", "-h", "0.0.0.0", "-p", "3000"]
Alec Ryan
05/03/2022, 11:58 AMAlec Ryan
05/03/2022, 11:59 AMAlec Ryan
05/03/2022, 12:00 PMAlec Ryan
05/03/2022, 12:01 PMload_from:
- python_file: nhl_elt/repo.py
daniel
05/03/2022, 1:11 PMAlec Ryan
05/03/2022, 1:11 PMAlec Ryan
05/03/2022, 1:11 PMStack Trace:
File "/usr/local/lib/python3.7/site-packages/dagster/grpc/server.py", line 217, in __init__
self._container_image,
File "/usr/local/lib/python3.7/site-packages/dagster/grpc/server.py", line 99, in __init__
loadable_target_origin.attribute,
File "/usr/local/lib/python3.7/site-packages/dagster/grpc/utils.py", line 33, in get_loadable_targets
else loadable_targets_from_python_file(python_file, working_directory)
File "/usr/local/lib/python3.7/site-packages/dagster/core/workspace/autodiscovery.py", line 26, in loadable_targets_from_python_file
loaded_module = load_python_file(python_file, working_directory)
File "/usr/local/lib/python3.7/site-packages/dagster/core/code_pointer.py", line 86, in load_python_file
return import_module_from_path(module_name, python_file)
File "/usr/local/lib/python3.7/site-packages/dagster/seven/__init__.py", line 47, in import_module_from_path
spec.loader.exec_module(module)
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/opt/dagster/app/nhl_elt/repo.py", line 4, in <module>
from nhl_elt.jobs.dbt_transforms import dbt_transforms
File "/opt/dagster/app/nhl_elt/jobs/dbt_transforms.py", line 8, in <module>
dbt_assets = load_assets_from_dbt_project(project_dir = DBT_DIR, profiles_dir = DBT_DIR)
File "/usr/local/lib/python3.7/site-packages/dagster_dbt/asset_defs.py", line 204, in load_assets_from_dbt_project
project_dir, profiles_dir, target_dir, select or "*"
File "/usr/local/lib/python3.7/site-packages/dagster_dbt/asset_defs.py", line 43, in _load_manifest_for_project
target_path=target_dir,
File "/usr/local/lib/python3.7/site-packages/dagster_dbt/cli/utils.py", line 67, 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)
location_name=location_name, error_string=error.to_string()
Alec Ryan
05/03/2022, 1:12 PMDBT_DIR = 'dbt'
daniel
05/03/2022, 1:23 PMAlec Ryan
05/03/2022, 1:26 PMaryan-laptop:nhl-analytics-pipleine-dagster alecryan$ docker run nhl_dag:1.5
E0503 13:25:12.266496765 10 <http://fork_posix.cc:70]|fork_posix.cc:70]> Fork support is only compatible with the epoll1 and poll polling strategies
/usr/local/lib/python3.7/site-packages/dagster/core/workspace/context.py:563: UserWarning: Error loading repository location repo.py:FileNotFoundError: [Errno 2] No such file or directory: 'dbt': 'dbt'
Stack Trace:
File "/usr/local/lib/python3.7/site-packages/dagster/grpc/server.py", line 217, in __init__
self._container_image,
File "/usr/local/lib/python3.7/site-packages/dagster/grpc/server.py", line 99, in __init__
loadable_target_origin.attribute,
File "/usr/local/lib/python3.7/site-packages/dagster/grpc/utils.py", line 33, in get_loadable_targets
else loadable_targets_from_python_file(python_file, working_directory)
File "/usr/local/lib/python3.7/site-packages/dagster/core/workspace/autodiscovery.py", line 26, in loadable_targets_from_python_file
loaded_module = load_python_file(python_file, working_directory)
File "/usr/local/lib/python3.7/site-packages/dagster/core/code_pointer.py", line 86, in load_python_file
return import_module_from_path(module_name, python_file)
File "/usr/local/lib/python3.7/site-packages/dagster/seven/__init__.py", line 47, in import_module_from_path
spec.loader.exec_module(module)
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/opt/dagster/app/nhl_elt/repo.py", line 4, in <module>
from nhl_elt.jobs.dbt_transforms import dbt_transforms
File "/opt/dagster/app/nhl_elt/jobs/dbt_transforms.py", line 8, in <module>
dbt_assets = load_assets_from_dbt_project(project_dir = DBT_DIR, profiles_dir = DBT_DIR)
File "/usr/local/lib/python3.7/site-packages/dagster_dbt/asset_defs.py", line 204, in load_assets_from_dbt_project
project_dir, profiles_dir, target_dir, select or "*"
File "/usr/local/lib/python3.7/site-packages/dagster_dbt/asset_defs.py", line 43, in _load_manifest_for_project
target_path=target_dir,
File "/usr/local/lib/python3.7/site-packages/dagster_dbt/cli/utils.py", line 67, 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)
location_name=location_name, error_string=error.to_string()
Alec Ryan
05/03/2022, 1:26 PMAlec Ryan
05/03/2022, 1:27 PMfrom dagster import AssetGroup
from dagster_dbt import dbt_cli_resource
from dagster_dbt.asset_defs import load_assets_from_dbt_project
DBT_DIR = '/opt/dagster/app/dbt'
dbt_assets = load_assets_from_dbt_project(project_dir = DBT_DIR, profiles_dir = DBT_DIR)
dbt_asset_group = AssetGroup(dbt_assets,
resource_defs={
'dbt': dbt_cli_resource
}
)
dbt_transforms = dbt_asset_group.build_job(name="dbt_transforms")
daniel
05/03/2022, 3:00 PMdocker run -it <your image here> dbt
? It seems like its having trouble finding the "dbt" executableAlec Ryan
05/03/2022, 3:01 PMAlec Ryan
05/03/2022, 3:02 PMAlec Ryan
05/03/2022, 3:02 PMAlec Ryan
05/03/2022, 3:02 PMdaniel
05/03/2022, 3:07 PMdaniel
05/03/2022, 3:07 PMdaniel
05/03/2022, 3:07 PMAlec Ryan
05/03/2022, 3:17 PMAlec Ryan
05/03/2022, 3:18 PMAlec Ryan
05/03/2022, 3:18 PMdaniel
05/03/2022, 3:29 PMdocker run -it --entrypoint "" <your image> dbt
Alec Ryan
05/03/2022, 3:31 PMaryan-laptop:nhl-analytics-pipleine-dagster alecryan$ docker run -it --entrypoint "" nhl_dag:1.6 dbt
docker: Error response from daemon: OCI runtime create failed: container_linux.go:380: starting container process caused: exec: "dbt": executable file not found in $PATH: unknown.
ERRO[0000] error waiting for container: context canceled
aryan-laptop:nhl-analytics-pipleine-dagster alecryan$
daniel
05/03/2022, 3:31 PMdaniel
05/03/2022, 4:11 PMFROM python:3.7-slim
RUN pip install dagster dagit dagster-postgres dagster-dbt dagster-aws dagster-snowflake pandas requests
WORKDIR /opt/dagster/app
EXPOSE 3000
ENTRYPOINT ["dagit", "-h", "0.0.0.0", "-p", "3000"]
daniel
05/03/2022, 4:13 PMowen
05/03/2022, 4:15 PMdbt
or dbt-core
is installedAlec Ryan
05/03/2022, 4:19 PMAlec Ryan
05/03/2022, 4:20 PMowen
05/03/2022, 4:20 PMAlec Ryan
05/03/2022, 4:24 PMAlec Ryan
05/03/2022, 4:25 PMdaniel
05/03/2022, 4:25 PMAlec Ryan
05/03/2022, 4:25 PMAlec Ryan
05/03/2022, 4:26 PMdaniel
05/03/2022, 4:26 PMAlec Ryan
05/03/2022, 4:26 PMAlec Ryan
05/03/2022, 4:26 PMdaniel
05/03/2022, 4:30 PMdaniel
05/03/2022, 4:30 PMAlec Ryan
05/03/2022, 4:31 PMAlec Ryan
05/03/2022, 4:31 PM