@@ -22,7 +22,6 @@ module "labels" {
22
22
provider "aws" {
23
23
alias = " accepter"
24
24
region = var. accepter_region
25
- version = " >= 3.1.15"
26
25
profile = var. profile_name
27
26
28
27
assume_role {
@@ -31,11 +30,11 @@ provider "aws" {
31
30
}
32
31
33
32
data "aws_caller_identity" "peer" {
34
- provider = " aws.accepter"
33
+ provider = aws. accepter
35
34
}
36
35
37
36
data "aws_region" "peer" {
38
- provider = " aws.accepter"
37
+ provider = aws. accepter
39
38
}
40
39
41
40
@@ -60,7 +59,7 @@ resource "aws_vpc_peering_connection" "default" {
60
59
# Description : Provides a resource to manage the accepter's side of a VPC Peering Connection.
61
60
resource "aws_vpc_peering_connection_accepter" "peer" {
62
61
count = var. enable_peering == true ? 1 : 0
63
- provider = " aws.accepter"
62
+ provider = aws. accepter
64
63
vpc_peering_connection_id = aws_vpc_peering_connection. default [0 ]. id
65
64
auto_accept = true
66
65
tags = module. labels . tags
@@ -89,33 +88,39 @@ data "aws_route_table" "requestor" {
89
88
data "aws_subnets" "requestor" {
90
89
count = var. enable_peering == true ? 1 : 0
91
90
91
+ filter {
92
+ name = " vpc-id"
93
+ values = [data . aws_vpc . requestor [0 ]. id ]
94
+ }
92
95
}
93
96
94
97
# Module : VPC ACCEPTOR
95
98
# Description : Lookup acceptor VPC so that we can reference the CIDR.
96
99
data "aws_vpc" "acceptor" {
97
- provider = " aws.accepter"
100
+ provider = aws. accepter
98
101
count = var. enable_peering == true ? 1 : 0
99
102
id = var. acceptor_vpc_id
100
103
}
101
104
102
105
# Module : SUBNET ID's ACCEPTOR
103
106
# Description : Lookup acceptor subnets.
104
107
data "aws_subnets" "acceptor" {
105
- provider = " aws.accepter"
108
+ provider = aws. accepter
106
109
count = var. enable_peering == true ? 1 : 0
110
+
111
+ filter {
112
+ name = " vpc-id"
113
+ values = [data . aws_vpc . acceptor [0 ]. id ]
114
+ }
107
115
}
108
116
109
117
# Module : ROUTE TABLE
110
118
# Description : Lookup acceptor route tables.
111
- data "aws_route_table " "acceptor" {
112
- provider = " aws.accepter"
119
+ data "aws_route_tables " "acceptor" {
120
+ provider = aws. accepter
113
121
count = var. enable_peering == true ? length (distinct (sort (data. aws_subnets . acceptor [0 ]. ids ))) : 0
114
122
115
- subnet_id = element (
116
- distinct (sort (data. aws_subnets . acceptor [0 ]. ids )),
117
- count. index
118
- )
123
+ vpc_id = data. aws_vpc . acceptor [0 ]. id
119
124
}
120
125
121
126
# Module : ROUTE REQUESTOR
@@ -144,14 +149,14 @@ resource "aws_route" "requestor" {
144
149
# Module : ROUTE ACCEPTOR
145
150
# Description : Create routes from acceptor to requestor.
146
151
resource "aws_route" "acceptor" {
147
- provider = " aws.accepter"
152
+ provider = aws. accepter
148
153
149
154
count = var. enable_peering == true ? length (
150
- distinct (sort (data. aws_route_table . acceptor . * . route_table_id ))
155
+ distinct (sort (data. aws_route_tables . acceptor [ 0 ] . ids ))
151
156
) * length (data. aws_vpc . requestor [0 ]. cidr_block_associations ) : 0
152
157
153
158
route_table_id = element (
154
- distinct (sort (data. aws_route_table . acceptor . * . route_table_id )),
159
+ distinct (sort (data. aws_route_tables . acceptor [ 0 ] . ids )),
155
160
ceil (
156
161
count. index / length (data. aws_vpc . requestor [0 ]. cidr_block_associations )
157
162
)
@@ -160,7 +165,7 @@ resource "aws_route" "acceptor" {
160
165
destination_cidr_block = data. aws_vpc . requestor . 0 . cidr_block_associations [count . index % length (data. aws_vpc . requestor [0 ]. cidr_block_associations )][" cidr_block" ]
161
166
vpc_peering_connection_id = aws_vpc_peering_connection. default [0 ]. id
162
167
depends_on = [
163
- data . aws_route_table . acceptor ,
168
+ data . aws_route_tables . acceptor ,
164
169
aws_vpc_peering_connection . default ,
165
170
]
166
171
}
0 commit comments