Skip to content

Commit b7f9bdc

Browse files
committed
us az ids
1 parent 6bcbeb3 commit b7f9bdc

File tree

3 files changed

+19
-6
lines changed

3 files changed

+19
-6
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -498,6 +498,7 @@ Sometimes it is handy to have public access to Redshift clusters (for example if
498498
| transferserver\_endpoint\_private\_dns\_enabled | Whether or not to associate a private hosted zone with the specified VPC for Transfer Server endpoint | bool | `"false"` | no |
499499
| transferserver\_endpoint\_security\_group\_ids | The ID of one or more security groups to associate with the network interface for Transfer Server endpoint | list(string) | `[]` | no |
500500
| transferserver\_endpoint\_subnet\_ids | The ID of one or more subnets in which to create a network interface for Transfer Server endpoint. Only a single subnet within an AZ is supported. If omitted, private subnets will be used. | list(string) | `[]` | no |
501+
| use\_az\_ids | Whether to use availability zone ids | bool | `"false"` | no |
501502
| vpc\_endpoint\_tags | Additional tags for the VPC Endpoints | map(string) | `{}` | no |
502503
| vpc\_tags | Additional tags for the VPC | map(string) | `{}` | no |
503504
| vpn\_gateway\_id | ID of VPN Gateway to attach to the VPC | string | `""` | no |

main.tf

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,8 @@ resource "aws_subnet" "public" {
285285

286286
vpc_id = local.vpc_id
287287
cidr_block = element(concat(var.public_subnets, [""]), count.index)
288-
availability_zone = element(var.azs, count.index)
288+
availability_zone = var.use_az_ids == false ? element(var.azs, count.index) : null
289+
availability_zone_id = var.use_az_ids ? element(var.azs, count.index) : null
289290
map_public_ip_on_launch = var.map_public_ip_on_launch
290291
assign_ipv6_address_on_creation = var.public_subnet_assign_ipv6_address_on_creation == null ? var.assign_ipv6_address_on_creation : var.public_subnet_assign_ipv6_address_on_creation
291292

@@ -312,7 +313,8 @@ resource "aws_subnet" "private" {
312313

313314
vpc_id = local.vpc_id
314315
cidr_block = var.private_subnets[count.index]
315-
availability_zone = element(var.azs, count.index)
316+
availability_zone = var.use_az_ids == false ? element(var.azs, count.index) : null
317+
availability_zone_id = var.use_az_ids ? element(var.azs, count.index) : null
316318
assign_ipv6_address_on_creation = var.private_subnet_assign_ipv6_address_on_creation == null ? var.assign_ipv6_address_on_creation : var.private_subnet_assign_ipv6_address_on_creation
317319

318320
ipv6_cidr_block = var.enable_ipv6 && length(var.private_subnet_ipv6_prefixes) > 0 ? cidrsubnet(aws_vpc.this[0].ipv6_cidr_block, 8, var.private_subnet_ipv6_prefixes[count.index]) : null
@@ -338,7 +340,8 @@ resource "aws_subnet" "database" {
338340

339341
vpc_id = local.vpc_id
340342
cidr_block = var.database_subnets[count.index]
341-
availability_zone = element(var.azs, count.index)
343+
availability_zone = var.use_az_ids == false ? element(var.azs, count.index) : null
344+
availability_zone_id = var.use_az_ids ? element(var.azs, count.index) : null
342345
assign_ipv6_address_on_creation = var.database_subnet_assign_ipv6_address_on_creation == null ? var.assign_ipv6_address_on_creation : var.database_subnet_assign_ipv6_address_on_creation
343346

344347
ipv6_cidr_block = var.enable_ipv6 && length(var.database_subnet_ipv6_prefixes) > 0 ? cidrsubnet(aws_vpc.this[0].ipv6_cidr_block, 8, var.database_subnet_ipv6_prefixes[count.index]) : null
@@ -380,7 +383,8 @@ resource "aws_subnet" "redshift" {
380383

381384
vpc_id = local.vpc_id
382385
cidr_block = var.redshift_subnets[count.index]
383-
availability_zone = element(var.azs, count.index)
386+
availability_zone = var.use_az_ids == false ? element(var.azs, count.index) : null
387+
availability_zone_id = var.use_az_ids ? element(var.azs, count.index) : null
384388
assign_ipv6_address_on_creation = var.redshift_subnet_assign_ipv6_address_on_creation == null ? var.assign_ipv6_address_on_creation : var.redshift_subnet_assign_ipv6_address_on_creation
385389

386390
ipv6_cidr_block = var.enable_ipv6 && length(var.redshift_subnet_ipv6_prefixes) > 0 ? cidrsubnet(aws_vpc.this[0].ipv6_cidr_block, 8, var.redshift_subnet_ipv6_prefixes[count.index]) : null
@@ -422,7 +426,8 @@ resource "aws_subnet" "elasticache" {
422426

423427
vpc_id = local.vpc_id
424428
cidr_block = var.elasticache_subnets[count.index]
425-
availability_zone = element(var.azs, count.index)
429+
availability_zone = var.use_az_ids == false ? element(var.azs, count.index) : null
430+
availability_zone_id = var.use_az_ids ? element(var.azs, count.index) : null
426431
assign_ipv6_address_on_creation = var.elasticache_subnet_assign_ipv6_address_on_creation == null ? var.assign_ipv6_address_on_creation : var.elasticache_subnet_assign_ipv6_address_on_creation
427432

428433
ipv6_cidr_block = var.enable_ipv6 && length(var.elasticache_subnet_ipv6_prefixes) > 0 ? cidrsubnet(aws_vpc.this[0].ipv6_cidr_block, 8, var.elasticache_subnet_ipv6_prefixes[count.index]) : null
@@ -456,7 +461,8 @@ resource "aws_subnet" "intra" {
456461

457462
vpc_id = local.vpc_id
458463
cidr_block = var.intra_subnets[count.index]
459-
availability_zone = element(var.azs, count.index)
464+
availability_zone = var.use_az_ids == false ? element(var.azs, count.index) : null
465+
availability_zone_id = var.use_az_ids ? element(var.azs, count.index) : null
460466
assign_ipv6_address_on_creation = var.intra_subnet_assign_ipv6_address_on_creation == null ? var.assign_ipv6_address_on_creation : var.intra_subnet_assign_ipv6_address_on_creation
461467

462468
ipv6_cidr_block = var.enable_ipv6 && length(var.intra_subnet_ipv6_prefixes) > 0 ? cidrsubnet(aws_vpc.this[0].ipv6_cidr_block, 8, var.intra_subnet_ipv6_prefixes[count.index]) : null

variables.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,6 +244,12 @@ variable "azs" {
244244
default = []
245245
}
246246

247+
variable "use_az_ids" {
248+
description = "Whether to use availability zone ids"
249+
type = bool
250+
default = false
251+
}
252+
247253
variable "enable_dns_hostnames" {
248254
description = "Should be true to enable DNS hostnames in the VPC"
249255
type = bool

0 commit comments

Comments
 (0)