gpt4 book ai didi

python - 从未在 AWS Lambda 上找到设置工具

转载 作者:太空狗 更新时间:2023-10-30 00:19:15 25 4
gpt4 key购买 nike

我正在尝试使用 AWS Lambda 进行一些 python 包内省(introspection)。

我想做的是,在 git push 上 check out 一个包,安装它的依赖项(自省(introspection)需要包依赖项),然后运行工具。默认情况下,AWS 没有安装 pip(您应该捆绑自己的依赖项)——因此我将 pip 与我的 lambda 函数捆绑在一起。

除了尝试安装包依赖项之外,我的 lambda 的所有其他部分都有效。尝试将我的捆绑 pip 与 check out 包一起使用时,尝试运行 setuptools 失败:

Collecting alembic==0.8.3 (from -r /tmp/tmpnx0tY0/requirements.txt (line 1)) 
Downloading alembic-0.8.3.tar.gz (935kB)
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named setuptools
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/tmp30m2KN/alembic

我已经尝试了所有方法:将当前路径(使用 setuptools)添加到路径,将 setuptools 复制到临时目录,运行 pip install setuptools,使用 --global-options 传递选项,尝试使用指定 PYTHONPATH 的环境 pOpen,甚至尝试使用旧版本的 pip:pip install -r requirements.txt --下载 --no-install。似乎没有任何效果。

如何通过调用 python setup.py egg_info 来成功定位 setuptools?

最佳答案

您是否考虑过使用 Jenkins(或任何其他 CI 工具)连接到您的 Git 存储库,在推送时构建存储库,然后在运行之前将打包的 lambda 和所有依赖项上传到 S3?

在 AWS Lambdas 中,您只能将文件下载到/tmp 文件夹,并且您有 50mb 的空间限制。这 50mb 还包括您的 lambda 函数占用的空间。 Lambda 是压缩的,不包含 pip 是有原因的。

关于python - 从未在 AWS Lambda 上找到设置工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36751547/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com