@@ -5,38 +5,44 @@ data "aws_availability_zones" "available_zones" {}
55module "aws_public_subnet" {
66 source = " ./resources"
77 create = contains (var. subnet_type , " public" ) ? 1 : 0
8+ tier = var. cluster_architecture == " 1-tier" ? 1 : 0
89 cluster_prefix = var. cluster_prefix
910 cluster_environment = var. cluster_environment
1011 vpc_id = var. vpc_id
1112 cidr = var. cidr
1213 subnet_bits = var. subnet_bits
1314 subnet_type = " public"
15+ cluster_architecture = var. cluster_architecture
1416}
1517
1618# AWS Private Subnets
1719module "aws_private_subnet" {
1820 source = " ./resources"
1921 create = contains (var. subnet_type , " private" ) ? 1 : 0
22+ tier = var. cluster_architecture == " 2-tier" ? 1 : 0
2023 cluster_prefix = var. cluster_prefix
2124 cluster_environment = var. cluster_environment
2225 vpc_id = var. vpc_id
2326 cidr = var. cidr
2427 offset = length (data. aws_availability_zones . available_zones . names )
2528 subnet_bits = var. subnet_bits
2629 subnet_type = " private"
30+ cluster_architecture = var. cluster_architecture
2731}
2832
2933# AWS Storage Subnets
3034module "aws_storage_subnet" {
3135 source = " ./resources"
3236 create = contains (var. subnet_type , " storage" ) ? 1 : 0
37+ tier = var. cluster_architecture == " 3-tier" ? 1 : 0
3338 cluster_prefix = var. cluster_prefix
3439 cluster_environment = var. cluster_environment
3540 cidr = var. cidr
3641 vpc_id = var. vpc_id
3742 offset = 2 * length (data. aws_availability_zones . available_zones . names )
3843 subnet_bits = var. subnet_bits
3944 subnet_type = " storage"
45+ cluster_architecture = var. cluster_architecture
4046}
4147
4248# AWS Route Tables - Public Route
@@ -49,7 +55,7 @@ resource "aws_route" "public_route" {
4955
5056# AWS Route Tables - Private Route
5157resource "aws_route" "private_route" {
52- count = contains (var. subnet_type , " private" ) ? length (data. aws_availability_zones . available_zones . names ) : 0
58+ count = var . cluster_architecture == " 2-tier " || var . cluster_architecture == " 3-tier " && contains (var. subnet_type , " private" ) ? length (data. aws_availability_zones . available_zones . names ) : 0
5359 route_table_id = module. aws_private_subnet . route_table_ids [count . index ]
5460 destination_cidr_block = " 0.0.0.0/0"
5561 nat_gateway_id = var. aws_nat_gateway_id [count . index ]
0 commit comments