Skip to content

Terraform module that creates an API Gateway using OpenAPI YAML file with an optional authorizer

Notifications You must be signed in to change notification settings

neilharia7/terraform-aws-openapi-gateway

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

terraform-aws-openapi-gateway

Terraform module that creates an API Gateway using OpenAPI YAML file with an optional authorizer

Usage

data "github_repository_file" "workspace_open_api_file" {
  repository = "<repository name>"
  branch     = "<branch name>"
  file       = "<file path to your openapi.yaml>"
}

locals {
  open_api_file = data.github_repository_file.workspace_open_api_file.content
  temp1         = replace(local.open_api_file, "$${AWS::Region}", var.region)
  temp2         = replace(local.temp1, "Fn::Sub:", "")
  temp3         = replace(local.temp2, "$${Lambda.Arn}", aws_lambda_function.pet_function.function_arn)  # replace with your function arn
  final         = replace(local.temp3, "$${CognitoLambda.Arn}", aws_lambda_function.cognito_function.function_arn)  # replace with your cognito function arn
}

module "openapi_gateway" {
  source                       = "git::[email protected]:neilharia7/terraform-aws-openapi-gateway"
  name                         = "api-gw"
  enable_authorizer            = true
  authorizer_function_name     = aws_lambda_function.cognito_function.function_name  # replace with your cognito function arn
  lambda_handler_function_name = aws_lambda_function.pet_function.function_name  # replace with your function name
  triggers                     = {
    redeployment = local.final
  }
  types = ["REGIONAL"]
  body  = local.final
}

About

Terraform module that creates an API Gateway using OpenAPI YAML file with an optional authorizer

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages