Почему-то я не могу развернуть файлы DAG в Google Composer, если я импортирую google.cloud.storage в DAG. Если я попытаюсь развернуть такой файл DAG, он не будет добавлен в DagBag, поэтому в нем будет отсутствующая ссылка на веб-сайте Airflow, и он не будет использоваться. На этом этапе есть обычный значок информации: «Эта группа доступности базы данных недоступна в объекте DagBag веб-сервера. Он отображается в этом списке, потому что планировщик пометил его как активный в базе данных метаданных. В отличие от фактической синтаксической ошибки, в верхней части страницы нет сообщения об ошибке.
Я точно определил, импортирую ли я google.cloud.storage или нет. Даже если я действительно использую это. Например, эта метка работает нормально, если я закомментирую строку импорта хранилища, не устанавливается в Composer, если я ее заменяю. Кто-нибудь может понять, почему?
import datetime
from airflow import DAG
from google.cloud import storage
from airflow.operators.python_operator import PythonOperator
default_args = {
'owner': 'Airflow',
'depends_on_past': False,
'email': ['kevin@here.com'],
'email_on_failure': True,
'email_on_retry': True,
'retries': 1,
'retry_delay': datetime.timedelta(minutes=5),
'start_date': datetime.datetime(2017,1,1),
}
def ingest_file(**kwargs):
status = 'OK'
return status
# Not scheduled, trigger only
dag = DAG('ingest_test', default_args=default_args, schedule_interval=None)
ingest = PythonOperator(task_id = 'ingest', provide_context = True,
python_callable = ingest_file, dag = dag)