În fluxul de aer, încerc să fac o functie care este dedicat pentru a genera Cotarlele într-un fișier:
dynamic_dags.py:
def generate_dag(name):
with DAG(
dag_id=f'dag_{name}',
default_args=args,
start_date=days_ago(2),
schedule_interval='5 5 * * *',
tags=['Test'],
catchup=False
) as dag:
dummy_task=DummyOperator(
task_id="dynamic_dummy_task",
dag=dag
)
return dag
Apoi, într-un alt dosar încerc să import cainii dintr-un fișier separat:
load_dags.py:
from dynamic_dag import generate_dag
globals()["Dynamic_DAG_A"] = generate_dag('A')
Cu toate acestea, cainii nu sunt afișate pe web UI. Dar dacă le fac într-un singur fișier fel de cod de mai jos, se va lucra:
def generate_dag(name):
with DAG(
dag_id=f'dag_{name}',
default_args=args,
start_date=days_ago(2),
schedule_interval='5 5 * * *',
tags=['Test'],
catchup=False
) as dag:
dummy_task=DummyOperator(
task_id="dynamic_dummy_task",
dag=dag
)
return dag
globals()["Dynamic_DAG_A"] = generate_dag('A')
Mă întreb de ce o fac în două fișiere separate, nu funcționează.