实际代码放在哪里?包必须很薄,这是假设当任务开始运行时,它会进行导入,并运行一些python代码。
当我们在独立的气流上时,我可以将我的项目根添加到PYTHON_PATH并从那里进行导入,但在AWS管理的气流中,我找不到任何线索。
将您的dag放入S3。初始化MWAA环境后,您将确定包含代码的S3桶。
。,创建一个bucket<my-dag-bucket>
,并将您的dag放在子文件夹dags
s3://<my-dag-bucket>/dags/
还要确保在需求文件中定义所有python依赖项,并将其放在同一个桶中:
s3://<my-dag-bucket>/requirements.txt
最后,如果您需要提供自己的模块,将它们压缩并将压缩文件也放入bucket中:
s3://<my-dag-bucket>/plugins.zip
见https://docs.aws.amazon.com/mwaa/latest/userguide/get-started.html