我使用无服务器在AWS上部署我的API。
在无服务器中,它允许部署单个功能:
sls deploy -f <function name>
但它不允许删除单个功能:
sls remove // will remove all functions.
有没有办法删除不会对其他功能产生影响的单一功能?
答案 0 :(得分:8)
@ justin.m.chase建议:
只需删除serverless.yml中的函数,然后运行完全部署
sls deploy
删除该功能(Lambda + API Gateway)。 PERFECTO!
答案 1 :(得分:2)
我知道这个问题已有一年多的历史了,但是已经被关闭了,但是删除单个函数的正确方法是通过您几乎拥有的名字来指定它:
sls remove -f <function name>
答案 2 :(得分:0)
正如Peter Pham所说,从serverless.yml中删除该功能并执行完整操作:
sls deploy
如果您尝试在AWS中手动删除该功能,则会引起很多麻烦。
答案 3 :(得分:0)
我知道它有些旧,但是无服务器的部署痛苦仍然是一回事。
我最近开发了一个cli,它可以利用AWS sam cli(因此cli名称: Rocketsam )在AWS中构建微服务。
cli启用每个功能的缓存(如果仅更改一个功能代码,则不再完全部署到微服务)。 它还具有其他功能,例如将模板文件拆分为每个功能,在各个功能之间共享代码,获取日志等等:
https://www.npmjs.com/package/rocketsam
当前cli仅在python 3.6中支持构建功能,但将来可以根据需求轻松扩展。