制作 sam 到 IGNORE requirements.txt

问题描述

所以我使用 AWS SAM 来构建和部署一些函数到 AWS Lambda。 由于我的连接速度慢,上传功能很慢,所以我决定创建一个包含需求的层。所以下次当我尝试部署函数时,我不必上传所有 50 mb 的需求,我可以使用已经上传的层。

问题是我找不到任何可以让我忽略需求文件并部署源代码的参数。

有可能吗?

解决方法

我希望我能正确理解您的问题,但如果您想部署一个没有任何依赖项的 lambda,您可以尝试两件事:

  • 在运行 sam build 之前不运行 sam deploy
  • 有一个空的 requirements.txt 文件。那么 sam build 根本不包含该 lambda 函数的任何依赖项。

当然,这里我假设该层已经存在于 AWS 中,并且未包含在同一模板中。如果它们是在同一个模板中定义的,则必须将它们分成两个堆栈。一种是可以部署一次的层,另一种是 lambda 引用该层。

不幸的是,据我所知,sam build 没有忽略requirements.txt 的标志,因为该命令的核心目的是构建依赖项。