python - 在故意失败的回调中将任务标记为成功

标签 python airflow

在 Airflow 2.3.4 中,我有一个任务我故意失败,当它失败时我想将其标记为成功 在回调中,但下面不起作用。,

def intentional_failure():
     raise AirflowException("this is a dummy failure")

def handle_failure(context):
     context['task_instance'].state = State.SUCCESS

dummy_failure = PythonOperator(task_id="intentional_failure", python_callable=intentional_failure, on_failure_callback=handle_failure)

如何以编程方式将故意失败的任务标记为成功?

最佳答案

事实证明这是一个方法调用而不是一个属性。所以我们需要在on_failure_callback中设置context['ti'].set_state(State.SUCCESS)

关于python - 在故意失败的回调中将任务标记为成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75622228/

相关文章:

Airflow 无法识别 DAG 调度

Airflow TimeDeltaSensor因操作数类型不受支持而失败

python - 如何获取和解码指定到特定端口的消息

python - 如何获得一套字典?

python - 运行 super().__init__(value),其中 value 是 @property

python - 如何在另一个 dag apache Airflow 中创建 dags

Airflow 弃用警告

python - 从 get_or_create 结果分配时,ForeignKey 不会保存

python - 使用正则表达式从列表中删除数量

kubernetes - Airflow 无法识别我的 S3 连接设置