Size: a a a

2020 October 06

ME

Max Efremov in Airflow
источник

ME

Max Efremov in Airflow
Спасибо, помогло) Как же хорошо без этого предупреждения сейчас)
источник

DS

Dmitry Samoylov in Airflow
Дмитрий Негреев
кто-нибудь свои плагины вызывает через
airflow.hooks.my_namespace.MyHook
airflow.operators.my_namespace.MyOperator?

упаковал плагин в колесо, и в даге импортирую просто как
my_plugin.operators.my_namespace.MyOperator
все работает вроде, и никаких ошибкок в IDE нет
есть. Если ты импортируешь как my_plugin.operators.my_namespace.MyOperator и у тебя даг состоит только из тасок этого оператора, то airflow не воспримет этот даг
источник

ДН

Дмитрий Негреев... in Airflow
Dmitry Samoylov
есть. Если ты импортируешь как my_plugin.operators.my_namespace.MyOperator и у тебя даг состоит только из тасок этого оператора, то airflow не воспримет этот даг
о как, спасибо
пойду проверять
источник

ДН

Дмитрий Негреев... in Airflow
тогда попутно такой вопрос:
как правильно описать entry_points в сетапе для плагина, если
class MyAirflowPlugin(AirflowPlugin):
 name = 'my_namespace'
 operators = [MyOperator]
 hooks = [MyHook]
описываю в __init__.py самого плагина

https://airflow.apache.org/docs/stable/plugins.html#plugins-as-python-packages
тут все лежит в my_plugin.py

как-то так чтоли надо?
entry_points = {
       'airflow.plugins': [
           'my_plugin = my_package.init:MyAirflowPlugin'
       ]
   }

попробовал так, не работает
entry_points = {
       'airflow.plugins': [
           'my_plugin = my_package:MyAirflowPlugin'
       ]
   }
источник

DS

Dmitry Samoylov in Airflow
Дмитрий Негреев
тогда попутно такой вопрос:
как правильно описать entry_points в сетапе для плагина, если
class MyAirflowPlugin(AirflowPlugin):
 name = 'my_namespace'
 operators = [MyOperator]
 hooks = [MyHook]
описываю в __init__.py самого плагина

https://airflow.apache.org/docs/stable/plugins.html#plugins-as-python-packages
тут все лежит в my_plugin.py

как-то так чтоли надо?
entry_points = {
       'airflow.plugins': [
           'my_plugin = my_package.init:MyAirflowPlugin'
       ]
   }

попробовал так, не работает
entry_points = {
       'airflow.plugins': [
           'my_plugin = my_package:MyAirflowPlugin'
       ]
   }
тут не подскажу, пока не делаем для них setup.
источник

AK

Anvar Khamidov in Airflow
Коллеги, добрый вечер!
В процессе так же построения пайплайна.

Я сделал такую штуку в даге
    check_files >> [pivot_gender_trip, pivot_average_duration, pivot_number_trips] >> send_statistics_task
Но как я понимаю, запускаться send_statistics_task будет после каждой функции в списке.

Как мне сделать так, чтобы запустился send_statistics_task после завершения всех методов в списке?
источник

ME

Max Efremov in Airflow
нет, он после всех запустится
источник

AK

Anvar Khamidov in Airflow
Max Efremov
нет, он после всех запустится
Хмм, просто в графике показано так, как будто после каждого будет запускаться, вот сомнения появились на этот счет
источник

AK

Anvar Khamidov in Airflow
Anvar Khamidov
Хмм, просто в графике показано так, как будто после каждого будет запускаться, вот сомнения появились на этот счет
Tree View
источник

ME

Max Efremov in Airflow
Там это поведение можно менять, но по дефолту он все будет ждать
источник

ME

Max Efremov in Airflow
в tree там как раз оно 3 раза пропишется)))
источник

AK

Anvar Khamidov in Airflow
Max Efremov
в tree там как раз оно 3 раза пропишется)))
Хмм, понял - принял
источник

ME

Max Efremov in Airflow
а вот в графе будет видно, что 1 штучка
источник

AK

Anvar Khamidov in Airflow
ща будем тестить
источник

AK

Anvar Khamidov in Airflow
Max Efremov
а вот в графе будет видно, что 1 штучка
Да, кстати
источник

AK

Anvar Khamidov in Airflow
Max Efremov
а вот в графе будет видно, что 1 штучка
Макс, спасибо, ща буду проверять эту штуку)
источник

ME

Max Efremov in Airflow
Можно просто сделать дамми операторы и на них протестить логику дага
источник

ME

Max Efremov in Airflow
если не хочется реальные действия пускать
источник

AK

Anvar Khamidov in Airflow
Max Efremov
Можно просто сделать дамми операторы и на них протестить логику дага
каким образом это делается?
источник