我正在尝试将我的 python 代码移至 Airflow。我有以下代码片段:
s3_client = boto3.client('s3',
region_name="us-west-2",
aws_access_key_id=aws_access_key_id,
aws_secret_access_key=aws_secret_access_key)
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用 Aiflow 的 s3 挂钩和 s3 连接重新创建此 s3_client,但无法在任何文档中找到一种方法来执行此操作,而无需直接在代码中指定 aws_access_key_id 和 aws_secret_access_key 。
任何帮助,将不胜感激
您需要在管理 -> 连接中或使用 cli 定义 aws 连接(请参阅文档)。定义连接后,您可以在S3Hook. 您的连接对象可以设置为:
Conn Id: <your_choice_of_conn_id_name>
Conn Type: Amazon Web Services
Login: <aws_access_key>
Password: <aws_secret_key>
Extra: {"region_name": "us-west-2"}
Run Code Online (Sandbox Code Playgroud)
在 Airflow 中,钩子包装了一个 python 包。因此,如果您的代码使用 hook,则没有理由直接导入 boto3。
| 归档时间: |
|
| 查看次数: |
7691 次 |
| 最近记录: |