【问题标题】:How to modify DAG parameter that has a default value when triggering a DAG manually手动触发 DAG 时如何修改具有默认值的 DAG 参数
【发布时间】:2020-12-18 13:38:11
【问题描述】:

我有兴趣在使用https://airflow.apache.org/docs/apache-airflow/stable/dag-run.html#passing-parameters-when-triggering-dags 手动触发 dag 时使用参数。

在我的例子中,参数应该是 days_of_data,它应该是 7,除非我们在手动触发中将参数作为 JSON 传递。因此,我们可以手动触发 dag,如果没有传递参数,它的值无论如何都是 7。

【问题讨论】:

    标签: airflow


    【解决方案1】:

    首先,确保参数 days_of_data 是您正在调用的运算符中的模板字段。之后,您只需在运算符中设置一个默认值,如下所示:

    "{{ dag_run.conf['days_of_data'] or 7 }}"
    

    这会将days_of_data 设置为 7,除非您在手动执行 DAG(从 CLI 或 UI)时传递以下 JSON:

    {"days_of_data": days}
    

    其中 x 可以是任何值。请注意,此参数是一个字符串,因此您可能需要将其转换为 int 或其他类型才能使用它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-08
      • 1970-01-01
      • 2023-03-25
      • 1970-01-01
      • 1970-01-01
      • 2022-07-18
      • 1970-01-01
      相关资源
      最近更新 更多