Airflow:通过 UI 和 Parameters/Config 触发 DAG

Airflow: Trigger DAG via UI with Parameters/Config

我看到可以使用 airflow 命令行 trigger_dag 和 parameters/config 键值对:

在我的例子中,我想通过 airflow UI 集中所有 airflow 操作(最好不要授予 CLI 访问权限),它有一个用于触发 dags 的按钮:

如何通过 UI 传递外部 parameters/config?

假设您使用的是最新版本的 Airflow 或者可以升级,那么您很幸运。 AIRFLOW-5843 in #5843 下的 Airflow 1.10.8 添加了对使用配置 blob 触发 DAG 运行 的支持。它不是通过您指向的同一个触发器 DAG 图标,而是通过从浏览->DAG 运行s->创建创建 DAG 运行。

从添加它的拉取请求中复制的支持 conf 的新表单的屏幕截图。

该表单还将验证 conf 的 JSON,这实际上可能是 CLI 之外的一步。

对于 Airflow 的最新版本 [我们使用 2.2.2],我们只传递配置 json

当我们点击 DAG 上可用的 Trigger/Play 按钮时,我们会看到一个包含 2 个选项的下拉列表

  1. 触发DAG
  2. 触发带配置的 DAG

单击第二个选项,您可以以 json 格式传递 conf,它可以在脚本中使用,并且可以在创建配置 JSON 时查看其用法,如下所示。

To access configuration in your DAG use {{ dag_run.conf }}. As core.dag_run_conf_overrides_params is set to False, so passing any configuration here won't override task params.