我有一个Lambda函数,用于每分钟基本上卷曲一个网址。为了做到这一点,我正在使用python Requests库。我遇到的问题是如何在AWS上安装软件包,就像我可以在本地安装一样。
我遇到了Zappa,它看起来像我需要的但是我遇到了配置问题。我浏览了zappa的安装步骤,下载了aws-cli并设置了aws api凭据。这是我得到的错误消息 -
$ zappa deploy production
Calling deploy for stage production..
Downloading and installing dependencies..
Packaging project as zip.
Error: Your app_function value is not a modular path. It needs to be in the format `your_module.your_app_object`.
在我的zappa_settings.json
-
{
"production": {
"app_function": "something",
"aws_region": "us-east-1",
"profile_name": "default",
"project_name": "something",
"runtime": "python2.7",
"s3_bucket": "company-lambda",
"lamda_handler": "app.lambda_handler"
}
}
在那个目录中我有 -
在app.py
-
def lambda_handler(event, context):
print('hello')
答案 0 :(得分:1)
Zappa主要用于在API Gateway和Lambda上托管Python WSGI应用程序,因此它通常用于迁移现有的Flask / Django应用程序,而那些应用程序对象也是如此。
如果您不需要该级别的功能,并且只想在您的Lambda函数中包含一些Python包,那么只需按照实际的AWS example将包裹包含在您上传的ZIP文件中打包请求,使用:
pip install requests -t /path/to/project-dir