Size: a a a

2021 April 01

А

Андрей in Airflow
Georgy Borodin
Ну и наконец кэширование слоёв: с билд-аргами у тебя слой FROM airflow:n будет меняться, а в случае установки через RUN-инструкцию, он будет закэширован
вчера только с этим параметром не пробовал собирать. сейчас попробую. да понятно что оно лучше. я же пока так, попробовал только поднять первый раз.
источник

А

Андрей in Airflow
тот же самый результат. в логе ставит пакет, в контейнере егл не видит
источник

А

Андрей in Airflow
что-то еще где-то включать надо
источник

А

Андрей in Airflow
импорты кстати для сторонних пакетов может как-то особенно пишутся
источник

RB

Roman Bakhtaraev in Airflow
Андрей
импорты кстати для сторонних пакетов может как-то особенно пишутся
а если из контейнера вызвать python ./path_to_dag? Что значит в контейнере нет? в pip list нет или airflow не видит?
источник

А

Андрей in Airflow
Roman Bakhtaraev
а если из контейнера вызвать python ./path_to_dag? Что значит в контейнере нет? в pip list нет или airflow не видит?
в pip list пакета нет
источник

А

Андрей in Airflow
соответственно python ./path_to_dag тоже дает No module named
источник

А

Андрей in Airflow
Georgy Borodin
Передать билд аргументы не лучше, чем положить requirements-файл свой: в первом случае пересборка потребует поиска изначально переданных аргументов, во втором любой, кто знаком с докеризацией Python-приложений (да и вообще просто с управлением зависимостями для Python-кода) сможет дополнить образ, дописав в requirements.txt
Георгий, вы сами собирали образ с доп пакетами и он работает?
источник

GB

Georgy Borodin in Airflow
Андрей
Георгий, вы сами собирали образ с доп пакетами и он работает?
Хоть и первое апреля, но да)
источник

GB

Georgy Borodin in Airflow
FROM apache/airflow:2.0.1-python3.8
USER root
RUN apt-get update \
 
&& apt-get install -y --no-install-recommends \
        gcc git \
 
&& apt-get autoremove -yqq --purge \
 
&& apt-get clean \
 
&& rm -rf /var/lib/apt/lists/*
USER airflow
COPY requirements.txt /requirements.txt
RUN pip install --no-cache-dir \
 --upgrade-strategy only-if-needed \
 --user -r /requirements.txt \
 -c "https://raw.githubusercontent.com/apache/airflow/constraints-2.0.1/constraints-3.8.txt"
COPY airflow.cfg ./airflow.cfg
источник

GB

Georgy Borodin in Airflow
Как-то вот так, для первого приблизительно такой же докерфайл
источник

Н

Никита in Airflow
Всем привет! А кто-нибудь знает как можно получить все, допустим, SparkSubmitOperator'ы во всех дагах и проитерироваться по ним?
источник

Н

Никита in Airflow
Я бы хотел вытащить их аргументы, мб классы в application_file и вытащить докстринг, чтобы красивую автоматическую документацию сделать
источник

А

Андрей in Airflow
Georgy Borodin
Хоть и первое апреля, но да)
у меня в docker-compose был стоковый образ прописан 😂🙈 вот и не было пакетов
источник

ФЧ

Филипп Чистяков... in Airflow
Скажите пожалуйста, как я могу уменьшить время между стартами тасков внутри дага?
источник

GB

Georgy Borodin in Airflow
Филипп Чистяков
Скажите пожалуйста, как я могу уменьшить время между стартами тасков внутри дага?
Перейти на второй эирфлоу, если честно
источник

GB

Georgy Borodin in Airflow
Филипп Чистяков
Скажите пожалуйста, как я могу уменьшить время между стартами тасков внутри дага?
Вот тут неплохо написано, почему https://www.astronomer.io/blog/airflow-2-scheduler
источник

ФЧ

Филипп Чистяков... in Airflow
Georgy Borodin
Перейти на второй эирфлоу, если честно
А как вы реализовали процесс импорта новых дагов из github а на 2 airflow?
источник

GB

Georgy Borodin in Airflow
Филипп Чистяков
А как вы реализовали процесс импорта новых дагов из github а на 2 airflow?
У нас свой CI/CD для таких вещей, никак не менялся с 1-ой версии
источник

ФЧ

Филипп Чистяков... in Airflow
Georgy Borodin
У нас свой CI/CD для таких вещей, никак не менялся с 1-ой версии
Мы нашли какой-то докер контейнер со встроенным ci, поэтому и на старой версии) а как это должно в нормальном режиме работать?
источник