Skip to content

horothesun/api-gateway-lambda-infra

Folders and files

NameName
Last commit message
Last commit date

Latest commit

52f5efc · Jan 25, 2025

History

60 Commits
Jan 25, 2025
Dec 22, 2022
Dec 29, 2023
Jun 25, 2023
Dec 29, 2023
Dec 23, 2022
Dec 23, 2022
Dec 23, 2022
Dec 22, 2022
Dec 23, 2022
Dec 22, 2022
Dec 23, 2022
Dec 30, 2023
Dec 23, 2022

Repository files navigation

API Gateway triggered Lambda infrastructure

CI Renovate enabled Mergify enabled

Code template

horothesun/api-gateway-lambda-template.g8

Setup

  • Add the following block to your infrastructure code
module "demo_api_gateway_lambda" {
  source = "github.com/horothesun/api-gateway-lambda-infra?ref=1.0.0"

  lambda_name                = "demo-api-gateway-lambda"
  lambda_memory_MB           = 512
  lambda_logs_retention_days = 7
  http_method                = "GET"
  http_route                 = "/time"
  http_timeout_seconds       = 30
  apigw_logs_retention_days  = 7
  burst_limit_rps            = 1
  rate_limit_rps             = 1
  initial_setup              = true # TO BE REMOVED once the first ECR image gets created!
}
  • Make sure your AWS OIDC for GitHub workflows role only contains permissions referencing ecr_repo_arn and NOT lambda_function_arn.
  • Apply the Terraform changes.
  • Run the service CI pipeline to publish the first ECR image (the pipeline will fail at the "Update lambda" stage).
  • Remove initial_setup from your configuration (defaulting it to false).
  • Update your AWS OIDC for GitHub workflows role by adding the permission referencing lambda_function_arn as well.
  • Apply the Terraform changes again.
  • Run the service CI pipeline again to update the lambda with the latest ECR image.