如何从环境变量创建气流变量

时间:2019-12-03 06:26:47

标签: airflow

https://airflow.apache.org/docs/stable/howto/connection/index.html#creating-a-connection-with-environment-variables

此页面说我们可以从环境变量创建气流连接。 例如

  

AIRFLOW_CONN_POSTGRES_MASTER = postgres:// user:password @ localhost:5432 / master

如果是这样,我们如何创建气流变量,可以在用户界面上创建Admin->变量?

2 个答案:

答案 0 :(得分:0)

环境变量的Airflow必须具有AIRFLOW_CONN_前缀,并具有URI格式的值才能正确使用连接。

在Airflow管道中引用连接时,conn_id应该是不带前缀的变量名称。

例如,如果conn_id名为postgres_master,则环境变量应命名为AIRFLOW_CONN_POSTGRES_MASTER(请注意,环境变量必须全部为大写)。

Airflow假定从环境变量返回的值采用URI格式 (例如postgres://user:password@localhost:5432/master或s3:// accesskey:secretkey @ S3)。

URI的方案部分不允许使用下划线字符,因此必须将其更改为连字符(例如,如果conn_type为google_compute_platform,则为google-compute-platform)。查询参数被解析为一维字典,然后用于填充额外的内容。 连接类型

https://airflow.apache.org/docs/stable/howto/connection/index.html

答案 1 :(得分:0)

自气流1.10.10起,可以使用以下约定将变量存储为环境变量:

AIRFLOW_VAR_ <变量名称>

您可以在DAG中使用变量,但它们在UI中将不可见。

来源:https://airflow.apache.org/docs/stable/concepts.html#storing-variables-in-environment-variables