1+ locals {
2+ secure_subnet_ip = split (" /" , element (aws_subnet. secure . * . cidr_block , length (aws_subnet. secure . * . cidr_block ) - 1 ))[0 ]
3+ secure_subnet_summary = var. vpc_cidr_summ != " /0" ? " ${ cidrhost (" ${ local . secure_subnet_ip } ${ var . vpc_cidr_summ } " , 0 )} ${ var . vpc_cidr_summ } " : aws_vpc. default . cidr_block
4+ }
15resource "aws_network_acl" "secure" {
26 vpc_id = aws_vpc. default . id
37 subnet_ids = aws_subnet. secure . * . id
@@ -13,63 +17,63 @@ resource "aws_network_acl" "secure" {
1317}
1418
1519resource "aws_network_acl_rule" "in_secure_from_secure" {
16- count = length (aws_subnet. secure . * . cidr_block )
20+ count = var . vpc_cidr_summ != " /0 " ? 1 : length (aws_subnet. secure . * . cidr_block )
1721 network_acl_id = aws_network_acl. secure . id
1822 rule_number = count. index + 101
1923 egress = false
2024 protocol = - 1
2125 rule_action = " allow"
22- cidr_block = aws_subnet. secure [count . index ]. cidr_block
26+ cidr_block = var . vpc_cidr_summ != " /0 " ? local . secure_subnet_summary : aws_subnet. secure [count . index ]. cidr_block
2327}
2428
2529resource "aws_network_acl_rule" "out_secure_to_secure" {
26- count = length (aws_subnet. secure . * . cidr_block )
30+ count = var . vpc_cidr_summ != " /0 " ? 1 : length (aws_subnet. secure . * . cidr_block )
2731 network_acl_id = aws_network_acl. secure . id
2832 rule_number = count. index + 1
2933 egress = true
3034 protocol = - 1
3135 rule_action = " allow"
32- cidr_block = aws_subnet. secure [count . index ]. cidr_block
36+ cidr_block = var . vpc_cidr_summ != " /0 " ? local . secure_subnet_summary : aws_subnet. secure [count . index ]. cidr_block
3337}
3438
3539resource "aws_network_acl_rule" "in_secure_from_private" {
36- count = length (aws_subnet. private . * . cidr_block )
40+ count = var . vpc_cidr_summ != " /0 " ? 1 : length (aws_subnet. private . * . cidr_block )
3741 network_acl_id = aws_network_acl. secure . id
3842 rule_number = count. index + 201
3943 egress = false
4044 protocol = - 1
4145 rule_action = " allow"
42- cidr_block = aws_subnet. private [count . index ]. cidr_block
46+ cidr_block = var . vpc_cidr_summ != " /0 " ? local . private_subnet_summary : aws_subnet. private [count . index ]. cidr_block
4347}
4448
4549resource "aws_network_acl_rule" "out_secure_to_private" {
46- count = length (aws_subnet. private . * . cidr_block )
50+ count = var . vpc_cidr_summ != " /0 " ? 1 : length (aws_subnet. private . * . cidr_block )
4751 network_acl_id = aws_network_acl. secure . id
4852 rule_number = count. index + 101
4953 egress = true
5054 protocol = - 1
5155 rule_action = " allow"
52- cidr_block = aws_subnet. private [count . index ]. cidr_block
56+ cidr_block = var . vpc_cidr_summ != " /0 " ? local . private_subnet_summary : aws_subnet. private [count . index ]. cidr_block
5357}
5458
5559resource "aws_network_acl_rule" "in_secure_from_transit" {
56- count = var. transit_subnet ? length (aws_subnet. transit . * . cidr_block ) : 0
60+ count = var. transit_subnet ? var . vpc_cidr_summ != " /0 " ? 1 : length (aws_subnet. transit . * . cidr_block ) : 0
5761 network_acl_id = aws_network_acl. secure . id
5862 rule_number = count. index + 301
5963 egress = false
6064 protocol = - 1
6165 rule_action = " allow"
62- cidr_block = aws_subnet. transit [count . index ]. cidr_block
66+ cidr_block = var . vpc_cidr_summ != " /0 " ? local . transit_subnet_summary : aws_subnet. transit [count . index ]. cidr_block
6367}
6468
6569resource "aws_network_acl_rule" "out_secure_to_transit" {
66- count = var. transit_subnet ? length (aws_subnet. transit . * . cidr_block ) : 0
70+ count = var. transit_subnet ? var . vpc_cidr_summ != " /0 " ? 1 : length (aws_subnet. transit . * . cidr_block ) : 0
6771 network_acl_id = aws_network_acl. secure . id
6872 rule_number = count. index + 201
6973 egress = true
7074 protocol = - 1
7175 rule_action = " allow"
72- cidr_block = aws_subnet. transit [count . index ]. cidr_block
76+ cidr_block = var . vpc_cidr_summ != " /0 " ? local . transit_subnet_summary : aws_subnet. transit [count . index ]. cidr_block
7377}
7478
7579# ############
0 commit comments