如何使用 PostgresOperator 在气流中执行多个 sql 文件?

How to execute multiple sql files in airflow using PostgresOperator?

我的 sql 文件夹中有多个 sql 文件。我不确定如何执行 DAG 中的所有 sql 文件?

  - dags
    - sql
      - dummy1.sql
      - dummy2.sql

对于单个文件,下面的代码有效

sql_insert= PostgresOperator(task_id='sql_insert',
                             postgres_conn_id='postgres_conn',
                             sql='sql/dummy1.sql')

有列表

sql_insert= PostgresOperator(task_id='sql_insert',
                             postgres_conn_id='postgres_conn',
                             sql=['sql/dummy1.sql', 'sql/dummy2.sql'])

或者你可以让它动态化

import glob
sql_insert= PostgresOperator(task_id='sql_insert',
                             postgres_conn_id='postgres_conn',
                             sql=glob.glob("sql/*.sql")]