Skip to content

Commit 0ed8ffe

Browse files
fix: Do not create cors_configuration when variable not provided (#114)
Co-authored-by: Bryant Biggs <[email protected]>
1 parent bfb473d commit 0ed8ffe

File tree

5 files changed

+5
-5
lines changed

5 files changed

+5
-5
lines changed

.pre-commit-config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
repos:
22
- repo: https://github.com/antonbabenko/pre-commit-terraform
3-
rev: v1.92.0
3+
rev: v1.92.1
44
hooks:
55
- id: terraform_fmt
66
- id: terraform_wrapper_module_for_each

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@ module "api_gateway" {
204204
| <a name="input_api_version"></a> [api\_version](#input\_api\_version) | A version identifier for the API. Must be between 1 and 64 characters in length | `string` | `null` | no |
205205
| <a name="input_authorizers"></a> [authorizers](#input\_authorizers) | Map of API gateway authorizers to create | <pre>map(object({<br> authorizer_credentials_arn = optional(string)<br> authorizer_payload_format_version = optional(string)<br> authorizer_result_ttl_in_seconds = optional(number)<br> authorizer_type = optional(string, "REQUEST")<br> authorizer_uri = optional(string)<br> enable_simple_responses = optional(bool)<br> identity_sources = optional(list(string))<br> jwt_configuration = optional(object({<br> audience = optional(list(string))<br> issuer = optional(string)<br> }))<br> name = optional(string)<br> }))</pre> | `{}` | no |
206206
| <a name="input_body"></a> [body](#input\_body) | An OpenAPI specification that defines the set of routes and integrations to create as part of the HTTP APIs. Supported only for HTTP APIs | `string` | `null` | no |
207-
| <a name="input_cors_configuration"></a> [cors\_configuration](#input\_cors\_configuration) | The cross-origin resource sharing (CORS) configuration. Applicable for HTTP APIs | <pre>object({<br> allow_credentials = optional(bool)<br> allow_headers = optional(list(string))<br> allow_methods = optional(list(string))<br> allow_origins = optional(list(string))<br> expose_headers = optional(list(string), [])<br> max_age = optional(number)<br> })</pre> | `{}` | no |
207+
| <a name="input_cors_configuration"></a> [cors\_configuration](#input\_cors\_configuration) | The cross-origin resource sharing (CORS) configuration. Applicable for HTTP APIs | <pre>object({<br> allow_credentials = optional(bool)<br> allow_headers = optional(list(string))<br> allow_methods = optional(list(string))<br> allow_origins = optional(list(string))<br> expose_headers = optional(list(string), [])<br> max_age = optional(number)<br> })</pre> | `null` | no |
208208
| <a name="input_create"></a> [create](#input\_create) | Controls if resources should be created | `bool` | `true` | no |
209209
| <a name="input_create_certificate"></a> [create\_certificate](#input\_create\_certificate) | Whether to create a certificate for the domain | `bool` | `true` | no |
210210
| <a name="input_create_domain_name"></a> [create\_domain\_name](#input\_create\_domain\_name) | Whether to create API domain name resource | `bool` | `true` | no |

main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ resource "aws_apigatewayv2_api" "this" {
1616
body = local.is_http ? var.body : null
1717

1818
dynamic "cors_configuration" {
19-
for_each = local.is_http && length(var.cors_configuration) > 0 ? [var.cors_configuration] : []
19+
for_each = local.is_http && var.cors_configuration != null ? [var.cors_configuration] : []
2020

2121
content {
2222
allow_credentials = cors_configuration.value.allow_credentials

variables.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ variable "cors_configuration" {
3030
expose_headers = optional(list(string), [])
3131
max_age = optional(number)
3232
})
33-
default = {}
33+
default = null
3434
}
3535

3636
variable "credentials_arn" {

wrappers/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ module "wrapper" {
88
api_version = try(each.value.api_version, var.defaults.api_version, null)
99
authorizers = try(each.value.authorizers, var.defaults.authorizers, {})
1010
body = try(each.value.body, var.defaults.body, null)
11-
cors_configuration = try(each.value.cors_configuration, var.defaults.cors_configuration, {})
11+
cors_configuration = try(each.value.cors_configuration, var.defaults.cors_configuration, null)
1212
create = try(each.value.create, var.defaults.create, true)
1313
create_certificate = try(each.value.create_certificate, var.defaults.create_certificate, true)
1414
create_domain_name = try(each.value.create_domain_name, var.defaults.create_domain_name, true)

0 commit comments

Comments
 (0)