[英]How can I run the aws-cli in an AWS Lambda Python 3.6 environment?
我想从运行时版本为Python 3.6的AWS Lambda函数中调用aws s3 sync
命令。 我怎样才能做到这一点?
您为什么不只使用随附的boto3 SDK?
sync
命令等效的命令 对于我的用例,我认为在架构和财务上都有意义,但是我愿意接受其他选择。 我的Lambda函数 :
现在,我可以在1-2秒内用1536 MB(最强大的Lambda函数)完成上述所有操作。 仅当我将更改提交到网站时才会触发此功能,因此运行成本不高。
也许它已经安装在Lambda环境中了?
在撰写本文时,事实并非如此。
import subprocess
command = ["./aws", "s3", "sync", "--acl", "public-read", "--delete",
source_dir + "/", "s3://" + to_bucket + "/"]
print(subprocess.check_output(command, stderr=subprocess.STDOUT))
默认情况下,Lambda上未安装AWS CLI,因此您必须将其包括在部署中。 尽管在Python 3.6 Lambda环境中运行,Python 2.7在该环境中仍然可用,因此本文中概述的方法将继续有效。
要在Lambda系统上进行实验,请看lambdash 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.