Воздушный поток на докере - проблема с путём - PullRequest
0 голосов
/ 04 октября 2019

Работа с потоком воздуха. Я пробую простую работу с DAG.

Я написал пользовательские операторы и другие файлы, которые я хочу импортировать в основной файл, где находится логика DAG.

Здесь структура папки:

├── airflow.cfg
├── dags
│   ├── __init__.py
│   ├── dag.py
│   └── sql_statements.sql
├── docker-compose.yaml
├── environment.yml
└── plugins
    ├── __init__.py
    └── operators
        ├── __init__.py
        ├── facts_calculator.py
        ├── has_rows.py
        └── s3_to_redshift.py

Я установил громкость прямо в compose file, так как я могу видеть их при входе в терминал контейнера.

Я следовал некоторым учебникам в Интернете, откуда я добавил некоторые__init__.py.

2 пустых __init__ находятся в

  • /plugins/operators:
from operators.facts_calculator import FactsCalculatorOperator
from operators.has_rows import HasRowsOperator
from operators.s3_to_redshift import S3ToRedshiftOperator

__all__ = [
    'FactsCalculatorOperator',
    'HasRowsOperator',
    'S3ToRedshiftOperator'
]
  • /plugins:
from airflow.plugins_manager import AirflowPlugin

import operators

# Defining the plugin class
class CustomPlugin(AirflowPlugin):
    name = "custom_plugin"
    # A list of class(es) derived from BaseOperator
    operators = [
        operators.FactsCalculatorOperator,
        operators.HasRowsOperator,
        operators.S3ToRedshiftOperator
    ]
    # A list of class(es) derived from BaseHook
    hooks = []
    # A list of class(es) derived from BaseExecutor
    executors = []
    # A list of references to inject into the macros namespace
    macros = []
    # A list of objects created from a class derived
    # from flask_admin.BaseView
    admin_views = []
    # A list of Blueprint object created from flask.Blueprint
    flask_blueprints = []
    # A list of menu links (flask_admin.base.MenuLink)
    menu_links = []

Но я продолжаю получать ошибки из своей IDE (например, No module named operators или Неразрешенные операторы ссылок внутри __init__) оператора.

Так как все не запускается навеб-сервер.

Есть идеи, как это настроить? Где я не прав?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...