我在DAG中有多个任务,如果前两个任务全部成功,我要触发第三个任务。为此,我向task3添加了触发规则
Flag=True
t1 = PythonOperator(task_id=task_id,
python_callable=python_callable_method,
dag=dag)
t2 = EmrStepSensor(task_id=task_id,
job_flow_id=job_flow_id",
step_id=step_id,
dag=dag
)
t3 = TriggerDagRunOperator(task_id=task_id,
trigger_dag_id=trigger_dag_name,
trigger_rule=TriggerRule.ALL_SUCCESS,
dag=dag)
t1 >> t2
if Flag:
t2 >> t3
即使执行t2任务,即EMR作业失败,也会触发t3。不知道为什么。
有什么建议吗?