启用AWS Lambda中Go代码的内联编辑



由于AWS Lambda上的Go代码没有启用内联代码编辑,我正在尝试创建一个Google Chrome扩展,以便能够通过引用S3存储桶上的文本或邮政编码来编辑Go代码。如果我也能在Lambda上部署更新的Go代码,那就太好了。我想我将不得不执行以下步骤从扩展-

  1. 从S3 bucket或Github获取Go代码
  2. 更新它
  3. 根据更新的代码创建zip文件
  4. 将zip文件上传到S3 bucket或Github
  5. 在Lambda上部署更新的zip文件

我不知道这是否是一种好的方法,也不知道是否有其他可能的方法。如果有人能给我一个更好的方法,或者告诉我我的想法是否可行,我将不胜感激。

我喜欢这个主意,但不幸的是,我不确定这是否是个好主意。

让我解释一下:

AWS Lambda支持的所有允许内联编辑的语言或多或少都是解释语言:Javascript、Python等。

这些语言的AWS运行时读取纯文本文件并编译/运行它们。

由于您部署纯文本文件,运行时负责运行它们,因此AWS Lambda控制台允许您编辑这些文件。

另一方面,Go以及Swift或Java等受支持的语言都需要作为";二进制";(我使用空中引号是因为Java JAR严格来说不是二进制代码,而是字节代码,然后由JVM进行解释。(到AWS。

这些语言的AWS Lambda运行时需要二进制而不是纯文本。这就是为什么您不能在AWS控制台中使用这些运行时编辑Lambdas的代码。

因此,即使您打开那个ZIP,也找不到可编辑的代码。

当然,你可以把二进制和纯文本代码放在ZIP中,然后当你通过Chrome扩展打开ZIP时,你可以向用户显示纯文本代码。

但是,还有一个问题是将代码编译成AWS Lambda Go运行时可以实际运行的二进制代码。

所以你的Chrome扩展需要捆绑一个Go编译器。不确定这是否可能。但我相信这不会是微不足道的。

相关内容

最新更新