DAG 级别的 retries 不会覆盖任务级别的 retries。如果您希望 DAG 中所有任务有相同的 retries,可以在 DAG 定义中设置默认 retries,例如:
from airflow import DAG
from airflow.operators.bash_operator import BashOperator
from datetime import datetime
default_args = {
    'owner': 'airflow',
    'depends_on_past': False,
    'start_date': datetime(2021, 3, 1),
    'email_on_failure': False,
    'email_on_retry': False,
    'retries': 3
}
    
with DAG('example_dag', default_args=default_args) as dag:
    task1 = BashOperator(
        task_id='task1',
        bash_command='echo "Hello World"',
        retries=1
    )
    task2 = BashOperator(
        task_id='task2',
        bash_command='echo "Goodbye World"',
        retries=2
    )
    
    task1 >> task2
在上面的例子中,DAG 中所有任务的默认 retries 为 3,但是您仍然可以在每个任务中覆盖 retries。例如,task1 的 retries 被设置为 1,而 task2 的 retries 被设置为 2。