Skip to content

Commit ca35ca9

Browse files
authored
Merge pull request #61 from pablo19sc/transit_gateway
include tgw appliance mode and dns support
2 parents ef781be + 777a09e commit ca35ca9

File tree

3 files changed

+9
-1
lines changed

3 files changed

+9
-1
lines changed

examples/transit_gateway/main.tf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ module "vpc" {
2929
route_to_nat = false
3030
transit_gateway_default_route_table_association = true
3131
transit_gateway_default_route_table_propagation = true
32+
transit_gateway_appliance_mode_support = "enable"
33+
transit_gateway_dns_support = "disable"
3234
}
3335
}
3436
}

main.tf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,8 @@ resource "aws_ec2_transit_gateway_vpc_attachment" "tgw" {
222222

223223
transit_gateway_default_route_table_association = try(var.subnets.transit_gateway.transit_gateway_default_route_table_association, null)
224224
transit_gateway_default_route_table_propagation = try(var.subnets.transit_gateway.transit_gateway_default_route_table_propagation, null)
225+
appliance_mode_support = try(var.subnets.transit_gateway.transit_gateway_appliance_mode_support, "disable")
226+
dns_support = try(var.subnets.transit_gateway.transit_gateway_dns_support, "enable")
225227
}
226228

227229
resource "aws_ec2_transit_gateway_route_table_association" "tgw" {

variables.tf

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,8 @@ variable "subnets" {
9393
- `transit_gateway_id` = (Required|string) Transit gateway to attach VPC to.
9494
- `transit_gateway_default_route_table_association` = (Optional|bool) Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways.
9595
- `transit_gateway_default_route_table_propagation` = (Optional|bool) Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways.
96+
- `transit_gateway_appliance_mode_support` = (Optional|string) Whether Appliance Mode is enabled. If enabled, a traffic flow between a source and a destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. Valid values: `disable` (default) and `enable`.
97+
- `transit_gateway_dns_support` = (Optional|string) DNS Support is used if you need the VPC to resolve public IPv4 DNS host names to private IPv4 addresses when queried from instances in another VPC attached to the transit gateway. Valid values: `enable` (default) and `disable`.
9698
9799
Example:
98100
```
@@ -159,7 +161,7 @@ EOF
159161

160162
# All var.subnets.transit_gateway valid keys
161163
validation {
162-
error_message = "Invalid key in transit_gateway subnets. Valid options include: \"cidrs\", \"netmask\", \"name_prefix\", \"transit_gateway_id\", \"transit_gateway_default_route_table_association\", \"transit_gateway_default_route_table_propagation\", \"tags\"."
164+
error_message = "Invalid key in transit_gateway subnets. Valid options include: \"cidrs\", \"netmask\", \"name_prefix\", \"transit_gateway_id\", \"transit_gateway_default_route_table_association\", \"transit_gateway_default_route_table_propagation\", \"transit_gateway_appliance_mode_support\", \"transit_gateway_dns_support\", \"tags\"."
163165
condition = length(setsubtract(keys(try(var.subnets.transit_gateway, {})), [
164166
"cidrs",
165167
"netmask",
@@ -168,6 +170,8 @@ EOF
168170
"transit_gateway_id",
169171
"transit_gateway_default_route_table_association",
170172
"transit_gateway_default_route_table_propagation",
173+
"transit_gateway_appliance_mode_support",
174+
"transit_gateway_dns_support",
171175
"tags"
172176
])) == 0
173177
}

0 commit comments

Comments
 (0)