Ve vzduchu, snažím se vytvořit funkci, která je určena pro generování Pesy v souboru:
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
Pak v dalším souboru snažím se importovat dags ze samostatného souboru:
load_dags.py:
from dynamic_dag import generate_dag
globals()["Dynamic_DAG_A"] = generate_dag('A')
Nicméně, pesy nejsou uvedeny na webovém ROZHRANÍ. Ale když jsem si je v jediném souboru, jak je uvedeno níže kód, to bude fungovat:
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')
Zajímalo by mě, proč to dělat ve dvou samostatných souborech nefunguje.