首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有函数代码的Terraform AWS Lambda CI/CD在单独的存储库中

具有函数代码的Terraform AWS Lambda CI/CD在单独的存储库中
EN

Stack Overflow用户
提问于 2021-11-08 00:44:39
回答 1查看 565关注 0票数 0

我有一个存储库,它包含了所有的terraform代码,包括一个aws_apigatewayv2_api资源和其他相关的资源,比如阶段。我想为这个API网关的每个路由设置lambda集成,但我不希望lambda运行时代码与我的基础设施位于同一个存储库中。我希望每个lambda的代码都有自己的存储库和独立的CI/CD管道,这样对lambda的代码更改就不需要terraform来查看应用上的其他基础设施(基本上,每个lambda都有一个单独的terraform状态)。问题是,我不知道如何做到这一点,同时允许每个lambda各自的aws_apigatewayv2_integration资源同时查看它需要的aws_api_gatewayv2aws_lambda_function

是我唯一的选择吗?

在每个lambda的terraform中,

  • 利用terraform_remote_state来查看aws_apigatewayv2_api所在的核心基础设施状态(但是,如果以破坏lambda集成的方式更新核心底层,那么lambda将无法知道,直到它获得与基础结构相同的存储库中的所有lambda代码。一个存储库,一个CI管道。

我不喜欢这些选项,因为我要么失去了运行时代码和基础结构的分离,要么失去了lambdas的terraform与核心terraform保持同步的能力。是否有第三种解决方案,理想情况下允许我保持这两种所需的质量?

EN

回答 1

Stack Overflow用户

发布于 2021-11-08 05:37:43

第三种解决方案是使用除了Terraform之外的无服务器框架,我过去使用Terraform来管理Lambda和API网关,这并不需要它。

infra文件夹用于Terraform无服务器框架的serverlessapp文件夹。

Mono现在越来越受欢迎。

记住:

  • Terraform最适合管理更持久的共享infrastructure
  • Serverless,非常适合管理特定于应用程序的infrastructure.

示例:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69877655

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档