Для DAG с воздушным потоком, когда вы импортируете свой собственный модуль, вам нужно убедиться, что 2 вещи:
- где находится модуль?Вам нужно найти, где находится корневой путь в вашей папке airflow.Например, в моем окне разработчика папки:
~ / projects / data / airflow / команды / имя_группы / projects / default / dags / dag_names / dag_files.py
Корень - воздушный поток, поэтому, если я добавлю свои модули my_module в
~ / projects / data / airflow / команды / team_name / common
Тогда мне нужно использовать
from teams.team_name.common import my_module
В вашем случае, если корень - это верхняя папка bi , и вы помещаете скрипты calc в bi/inbound_layer/test.py
, тогда вы можете использовать:
from bi.inbound_layer.test import calc
И вы должны убедиться, что у вас есть
\__init\__.py
файлы в структуре каталогов для правильной работы импорта.У вас должен быть пустой файл
\__init\__.py
в каждой папке в пути.Это указывает, что этот каталог является частью пакетов воздушного потока.В вашем случае вы можете использовать
touch \__init\__.py
(cli) в папках
bi и _inbound_layer_ для создания пустых
__init\__.py
.