如何读取气流云作曲家存储桶中的文件?

How do I read a file in the airflow cloud composer bucket?

为了将 bigquery 查询与实际代码分开,我想将 sql 存储在一个单独的文件中,然后从 python 代码中读取它。我试图将文件添加到与 DAG 相同的存储桶中以及子文件夹中,但是当气流是 运行 我的 python 脚本时,我似乎无法读取该文件sql 个文件。

我要的是这个:

gs://my-bucket/dags -> store dags
gs://my-bucket/dags/sql -> store sql files

sql 文件可能是我需要先阅读的文件,以注入 jinja 模板不支持的内容。

我可以做到以上几点吗?

Cloud Composer 使用从 gs://my-bucket/home/airflow/gcs/ 的 FUSE 驱动程序安装 GCS 存储桶。这意味着 gs://my-bucket/dags 文件夹在 /home/airflow/gcs/dags 的调度程序、Web 服务器和工作程序中可用。

您的 DAG 应该能够从 /home/airflow/gcs/dags/sql 目录读取 SQL 文件。

注意:/home/airflow/gcs/data 目录在 worker 上可用,但在网络服务器上不可用。