我有许多相互未连接的单独 DAG。 “连接”它们的一件事是它们被标记为
US_TAG
。
我正在尝试在所有这些 DAG(带有
US_TAG
)完成运行后运行新任务。我想知道是否可以使用 US_TAG
来做/知道?
非常感谢任何信息。
根据我的理解,你不能使用标签来描述 DAG 之间的依赖关系。标签仅用于任务管理。
如果你想基于DAG2运行DAG1,你应该使用ExternalTaskSensor
定义之前的任务
# Task to be depended
task_to_depend = BashOperator(
task_id='task_to_depend',
bash_command='echo "This is the task to depend on."',
dag=dag,
)
定义依赖于它的新任务
from airflow.sensors.external_task_sensor import ExternalTaskSensor
wait_for_task = ExternalTaskSensor(
task_id='wait_for_task',
external_dag_id='dag_to_depend_on', # depended DAG ID
external_task_id='task_to_depend', # depended task ID
dag=dag,
)
wait_for_task >> some_other_task