是否可以重命名AWS Lambda函数?


77

我已经在AWS上创建了一些Lambda函数用于测试目的(命名为test_function某物),然后在测试后我发现这些函数可以在prod env中使用。

是否可以重命名Lambda函数?如何?还是应该创建一个新的并复制粘贴源代码?


1
这是AWS,您真的认为它是如此简单吗?:D sucky UI :)
OZZIE

Answers:


74

重命名lambda函数最接近的方法是使用别名,这是命名lambda特定版本的一种方式。函数的实际名称是在创建后设置的。如果要重命名,只需创建一个新函数并将完全相同的代码复制到其中即可。这样做不会花费您任何额外的费用(因为您只需为执行时间付费),因此您什么也不会损失。

有关如何命名lambda函数的版本的参考,请参阅此处的文档。


33
您会以为亚马逊会按照您的说法行事,让我拥有该死的重命名功能:-)
Blundell

2

您无法重命名该功能,唯一的选择是遵循此处已经提供的建议,或者创建一个新建议并复制粘贴代码。

实际上,您不能重命名是一件好事:如果能够重命名,它将停止工作,因为附加到该功能的策略仍指向旧名称,除非您要手动编辑每个单独的名称或他们通用(这是不明智的)。

但是,作为软件开发方面的最佳实践,我建议您始终将生产和测试(阶段)分开,以有效地复制环境。

这样一来,您就可以在安全的环境中进行测试,如果您犯了一个错误,就不会失去任何重要的东西,并且当您确认新功能可以正常使用时,可以在生产环境中进行复制。

因此,在您的情况下,您将有两个lambda,一个称为“ my-lambda-staging”,另一个称为“ my-lambda-prod”。使用lambda的ENV变量来适应当前环境,因此您无需重构!


0

我的解决方案是导出函数,创建一个新的Lambda,然后将.zip文件上传到新的Lambda。


1
您知道如何通过界面执行此操作吗?
Darkace

我看到它只导出/导入代码。对于导入代码:功能代码>操作>上传.zip文件/从Amazon S3上传文件。
alditis
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.