1

我正在尝试使用 AWS Cloud9 部署 Lambda 函数。当我按下部署时,我的所有功能都会同时部署/同步,而不仅仅是我在部署时选择的功能。右键单击该功能并按部署时也是如此。我觉得这很烦人,想知道是否有任何解决方法?

4

2 回答 2

2

当您单击部署 Cloud9 时,会在后台运行aws cloudformation packageaws cloudformation deploytemplate.yaml文件。(来源:我为 AWS Cloud9 开发了 Lambda 集成)。

因为您的所有文件都捆绑到一个无服务器应用程序中,并且只有一个 CloudFormation 堆栈,所以它们只能使用 CloudFormation 一次性部署。

如果您只是对一个函数进行代码更改并且没有修改任何配置设置,则可以使用以下命令从命令行更新该函数:

zip -r - . | aws lambda update-function-code --function-name <function-name>`

在与您的文件相同的文件夹中运行它template.yaml,替换<function-name>为生成的完整名称,例如cloud9-myapp-myfunction-ABCD1234(您可以在 AWS 资源面板的远程函数列表下查看全名)。

于 2018-04-02T19:07:39.900 回答
1

在 AWS Cloud9 中,Lambda 函数是在无服务器应用程序中创建的,因此通过 CloudFormation 进行部署。使用 CloudFormation,整个堆栈会立即部署,因此所有功能都部署在一起(有关更多信息,请参阅此讨论)。

于 2018-04-02T18:31:22.090 回答