我有一个flask应用程序,可以将其部署到AWS lambda。该应用程序要求使用最新版本的boto3 (1.9.71)
,但是,当使用zappa
部署该应用程序时,它不会使用最新版本。
这是当前设置:
from flask import Blueprint
import boto3
bp_routes = Blueprint('simple_routes', __name__)
@bp_routes.route('/test_boto')
def test_boto():
return f'BOTO VERSION: {boto3.__version__}'
requirements.txt
:
flake8==3.7.7
Flask==1.0.2
flask-script==2.0.6
python-dotenv==0.10.1
yapf==0.27.0
zappa==0.48.2
botocore==1.12.71
boto3==1.9.71
使用flask run
在本地运行应用程序并浏览到路由
http://127.0.0.1:5000/test_boto
我得到
BOTO VERSION: 1.9.71
但是,当使用zappa update
将其部署到AWS lambda并浏览那里时,我得到了
BOTO VERSION: 1.9.42
有人知道如何解决此问题吗?
答案 0 :(得分:0)
Zappa默认情况下不包含boto3,因为其包含在lambda环境中。以前对我有用的软糖是在zappa_settings.json的exclude字段中添加了与任何内容都不匹配的模式,这随后导致zappa包含我捆绑的boto3。