如何在 dev/qa/prod 之类的气流中设置和 ENV 变量?
How to set and ENV variable in airflow like dev/qa/prod?
我想在 airflow 中设置一个 Env 变量,稍后我可以在我的管道中使用它。我需要它来识别元数据。
如果 $ENV == 'dev'
使用 s3-dev-bucket
如果 $ENV == 'prod'
使用 s3-prod-bucket
将由 s3-$ENV-bucket
.
标识
我试过将其放入 airflow UI 的变量中,但变量的值在一段时间后变为无效。如果有人可以为此提供可靠的方法,那就太好了。
这里有多个选项:
- 正如 Simon D 所建议的那样,最好的解决方案是建立连接的那一部分。然后在每个气流环境中,您将拥有相同的连接 ID 但不同的凭据和端点。
- 您可以使用 Airflow 变量。但是,您提到它们变为无效。我不知道为什么变量值会变为无效的任何错误。也许看看那个很好。
- 您可以使用环境变量。不知道你怎么样 运行 airflow 但这也是一种选择。
我想在 airflow 中设置一个 Env 变量,稍后我可以在我的管道中使用它。我需要它来识别元数据。
如果 $ENV == 'dev'
使用 s3-dev-bucket
如果 $ENV == 'prod'
使用 s3-prod-bucket
将由 s3-$ENV-bucket
.
我试过将其放入 airflow UI 的变量中,但变量的值在一段时间后变为无效。如果有人可以为此提供可靠的方法,那就太好了。
这里有多个选项:
- 正如 Simon D 所建议的那样,最好的解决方案是建立连接的那一部分。然后在每个气流环境中,您将拥有相同的连接 ID 但不同的凭据和端点。
- 您可以使用 Airflow 变量。但是,您提到它们变为无效。我不知道为什么变量值会变为无效的任何错误。也许看看那个很好。
- 您可以使用环境变量。不知道你怎么样 运行 airflow 但这也是一种选择。