From 30e55c6d29aab2f8094799a5a847bbad5fc60104 Mon Sep 17 00:00:00 2001 From: Goh Hong Yi Date: Thu, 1 Aug 2024 13:24:19 +0800 Subject: [PATCH 1/5] add support for gateway responses --- modules/gateway_response/locals.tf | 3 +++ modules/gateway_response/main.tf | 10 ++++++++++ modules/gateway_response/variables.tf | 11 +++++++++++ modules/gateway_response/versions.tf | 9 +++++++++ 4 files changed, 33 insertions(+) create mode 100644 modules/gateway_response/locals.tf create mode 100644 modules/gateway_response/main.tf create mode 100644 modules/gateway_response/variables.tf create mode 100644 modules/gateway_response/versions.tf diff --git a/modules/gateway_response/locals.tf b/modules/gateway_response/locals.tf new file mode 100644 index 0000000..d555d86 --- /dev/null +++ b/modules/gateway_response/locals.tf @@ -0,0 +1,3 @@ +locals { + +} diff --git a/modules/gateway_response/main.tf b/modules/gateway_response/main.tf new file mode 100644 index 0000000..043fd3a --- /dev/null +++ b/modules/gateway_response/main.tf @@ -0,0 +1,10 @@ +resource "aws_api_gateway_gateway_response" "wrapper" { + for_each = var.gateway_responses + + rest_api_id = var.rest_api_id + status_code = each.value.status_code + response_type = each.value.response_type + + response_templates = each.value.response_templates + response_parameters = each.value.response_parameters +} diff --git a/modules/gateway_response/variables.tf b/modules/gateway_response/variables.tf new file mode 100644 index 0000000..8deba13 --- /dev/null +++ b/modules/gateway_response/variables.tf @@ -0,0 +1,11 @@ +variable "rest_api_id" { + description = "The ID of the REST API" + type = string + default = "" +} + +variable "gateway_responses" { + description = "map of gateway responses" + type = map(any) + default = {} +} diff --git a/modules/gateway_response/versions.tf b/modules/gateway_response/versions.tf new file mode 100644 index 0000000..5d3bb09 --- /dev/null +++ b/modules/gateway_response/versions.tf @@ -0,0 +1,9 @@ +terraform { + required_version = ">= 1.9" + required_providers { + aws = { + source = "hashicorp/aws" + version = ">= 5.20.0" + } + } +} From 9c732bc0135bcd079265ca8873f2da3f43e46a73 Mon Sep 17 00:00:00 2001 From: Goh Hong Yi Date: Thu, 1 Aug 2024 13:30:26 +0800 Subject: [PATCH 2/5] use status code as key --- modules/gateway_response/main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/gateway_response/main.tf b/modules/gateway_response/main.tf index 043fd3a..6966134 100644 --- a/modules/gateway_response/main.tf +++ b/modules/gateway_response/main.tf @@ -2,7 +2,7 @@ resource "aws_api_gateway_gateway_response" "wrapper" { for_each = var.gateway_responses rest_api_id = var.rest_api_id - status_code = each.value.status_code + status_code = each.key response_type = each.value.response_type response_templates = each.value.response_templates From e38917762518068267c2eb23e7be34ef4e4e1964 Mon Sep 17 00:00:00 2001 From: Goh Hong Yi Date: Thu, 1 Aug 2024 14:32:25 +0800 Subject: [PATCH 3/5] use response type as key --- modules/gateway_response/main.tf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/gateway_response/main.tf b/modules/gateway_response/main.tf index 6966134..4ab0fac 100644 --- a/modules/gateway_response/main.tf +++ b/modules/gateway_response/main.tf @@ -2,8 +2,8 @@ resource "aws_api_gateway_gateway_response" "wrapper" { for_each = var.gateway_responses rest_api_id = var.rest_api_id - status_code = each.key - response_type = each.value.response_type + response_type = each.key + status_code = each.value.status_code response_templates = each.value.response_templates response_parameters = each.value.response_parameters From 9c8ed1a2b1877c8a6a19d57097dfce33b6fe33ba Mon Sep 17 00:00:00 2001 From: Goh Hong Yi Date: Thu, 1 Aug 2024 14:45:55 +0800 Subject: [PATCH 4/5] fix empty file --- modules/gateway_response/locals.tf | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 modules/gateway_response/locals.tf diff --git a/modules/gateway_response/locals.tf b/modules/gateway_response/locals.tf deleted file mode 100644 index d555d86..0000000 --- a/modules/gateway_response/locals.tf +++ /dev/null @@ -1,3 +0,0 @@ -locals { - -} From b40be031b3a1a023744d1e5811d01ffcf2a4bbc6 Mon Sep 17 00:00:00 2001 From: Goh Hong Yi Date: Thu, 1 Aug 2024 14:46:49 +0800 Subject: [PATCH 5/5] add readme.md --- modules/gateway_response/README.md | 33 ++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 modules/gateway_response/README.md diff --git a/modules/gateway_response/README.md b/modules/gateway_response/README.md new file mode 100644 index 0000000..d8aa5ec --- /dev/null +++ b/modules/gateway_response/README.md @@ -0,0 +1,33 @@ +## Requirements + +| Name | Version | +|------|---------| +| [terraform](#requirement\_terraform) | >= 1.9 | +| [aws](#requirement\_aws) | >= 5.20.0 | + +## Providers + +| Name | Version | +|------|---------| +| [aws](#provider\_aws) | >= 5.20.0 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [aws_api_gateway_gateway_response.wrapper](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/api_gateway_gateway_response) | resource | + +## Inputs + +| Name | Description | Type | Default | Required | +|------|-------------|------|---------|:--------:| +| [gateway\_responses](#input\_gateway\_responses) | map of gateway responses | `map(any)` | `{}` | no | +| [rest\_api\_id](#input\_rest\_api\_id) | The ID of the REST API | `string` | `""` | no | + +## Outputs + +No outputs.