使用Terraform开发和部署阶跃函数—更好的开发体验?



我想问一下是否有人有使用Terraform部署阶跃函数的经验?

我正在尝试步进函数,需要以可重复和可审计的方式部署到多个环境。我在我的沙箱环境中的AWS控制台(Workflow Studio)中开发了我的步骤函数,但最终我需要将它们部署到更高的环境中。

目前,这是通过将沙箱环境中的步骤函数导出为JSON并将其放入用于部署解决方案的Terraform模块中来完成的。这就产生了一个问题,因为沙盒步骤函数调用的是沙盒环境中的lambda,而其他环境当然也部署了自己的lambda,步骤函数应该调用这个lambda。

为了解决这个问题,步进函数JSON实际上是一个模板文件,其中lambdas的arn被替换为一个变量,然后在每个环境中用适当的值展开。

但是所有这些都导致了糟糕的开发体验。每次对步骤函数进行更改时,我都必须导出JSON,将其复制到Terraform模块中,并用正确的模板变量替换所有沙盒arn。

有谁对如何简化这个有建议吗?步骤函数是否只适用于不需要可重复和可审计部署的临时数据处理,还是我在这里错过了一些明显的解决方案?

正如在评论中已经说明的那样,您可以考虑SDK以及SAM或无服务器框架。

其他需要考虑的链接:

  • 无服务器阶跃函数项目
  • SAM阶跃函数文档

相关内容

最新更新