【问题标题】:How to set a default dag trigger configuration json如何设置默认的 dag 触发器配置 json
【发布时间】:2021-01-21 14:04:53
【问题描述】:

在气流中触发 dag 时,有一个窗口,我可以通过该窗口以 json 格式将参数设置为 dag。如下所示:

这个 json 总是空的,我必须知道我可以将哪些参数传递给 dag。相反,我希望能够预填充这个 json,这样当另一个用户尝试触发 dag 时,他可以简单地更改为 json 的值,而不必先查看 dags 代码。

在当前版本(2.0.0)的气流中有什么方法可以做到这一点?

【问题讨论】:

    标签: airflow


    【解决方案1】:

    在 Airflow 2.1.0 上,可以按如下方式设置默认参数:

    dag = DAG(dag_id="my_dag",
              schedule_interval=None,
              default_args={'retries': 3, 'retry_delay': timedelta(seconds=20)},
              catchup=False,
              tags=['maintenance'],
              params={"description": ""}  #Set parameters as a dictionary
    )
    

    在触发 UI 中,它看起来像这样:

    【讨论】:

    【解决方案2】:

    在编写我的功能请求时,我实际上发现了一个拉取请求,它已经被合并并且似乎完全按照描述的那样做:

    https://github.com/apache/airflow/pull/10839

    似乎也计划改进此功能。见:

    https://github.com/apache/airflow/issues/11054

    【讨论】:

    • 您是否设法创建了一个使用此功能的 dag?如果我理解正确,它应该可以通过添加一个 params 字典来工作,但我无法让它工作
    • @jmriego 在 Airflow 2.1.0 上的工作就像一个魅力。冈德,非常感谢!
    【解决方案3】:

    不,目前不支持——至少对于 Airflow 2.0.0

    【讨论】:

    • 您知道,是否有计划推出此功能?
    • 目前还没有计划
    猜你喜欢
    • 2020-04-15
    • 2022-10-14
    • 1970-01-01
    • 2014-01-09
    • 1970-01-01
    • 1970-01-01
    • 2023-01-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多