@@ -6,6 +6,9 @@ module "configuration" {
66
77locals {
88 cfg = module. configuration . merged [terraform . workspace ]
9+
10+ default_node_pool_cfg = local. cfg [" default_node_pool" ]
11+ default_node_pool_metadata_options_cfg = try (local. default_node_pool_cfg [" metadata_options" ], null )
912}
1013
1114data "aws_region" "current" {
@@ -28,19 +31,19 @@ module "cluster" {
2831
2932 kubernetes_version = local. cfg [" cluster_version" ]
3033
31- availability_zones = local. cfg [" cluster_availability_zones" ]
34+ availability_zones = try ( coalesce ( local. cfg [" cluster_availability_zones" ], null ), [])
3235
3336 vpc_config = {
34- cidr = local.cfg[" cluster_vpc_cidr" ]
35- control_subnet_newbits = local.cfg[" cluster_vpc_control_subnet_newbits" ]
36- node_subnet_newbits = local.cfg[" cluster_vpc_node_subnet_newbits" ]
37- node_subnet_number_offset = local.cfg[" cluster_vpc_node_subnet_number_offset" ]
38- legacy_node_subnets = local.cfg[" cluster_vpc_legacy_node_subnets" ]
39- dns_hostnames = local.cfg[" cluster_vpc_dns_hostnames" ]
40- dns_support = local.cfg[" cluster_vpc_dns_support" ]
41- subnet_map_public_ip = local.cfg[" cluster_vpc_subnet_map_public_ip" ]
42- endpoint_private_access = local.cfg[" cluster_endpoint_private_access" ]
43- endpoint_public_access = local.cfg[" cluster_endpoint_public_access" ]
37+ cidr = try ( coalesce ( local. cfg [" cluster_vpc_cidr" ], null ), " 10.0.0.0/16 " )
38+ control_subnet_newbits = try ( coalesce ( local. cfg [" cluster_vpc_control_subnet_newbits" ], null ), " 8 " )
39+ node_subnet_newbits = try ( coalesce ( local. cfg [" cluster_vpc_node_subnet_newbits" ], null ), " 4 " )
40+ node_subnet_number_offset = try ( coalesce ( local. cfg [" cluster_vpc_node_subnet_number_offset" ], null ), " 1 " )
41+ legacy_node_subnets = try ( coalesce ( local. cfg [" cluster_vpc_legacy_node_subnets" ], null ), false )
42+ dns_hostnames = try ( coalesce ( local. cfg [" cluster_vpc_dns_hostnames" ], null ), false )
43+ dns_support = try ( coalesce ( local. cfg [" cluster_vpc_dns_support" ], null ), true )
44+ subnet_map_public_ip = try ( coalesce ( local. cfg [" cluster_vpc_subnet_map_public_ip" ], null ), true )
45+ endpoint_private_access = try ( coalesce ( local. cfg [" cluster_endpoint_private_access" ], null ), false )
46+ endpoint_public_access = try ( coalesce ( local. cfg [" cluster_endpoint_public_access" ], null ), true )
4447 public_access_cidrs = local.cfg[" cluster_public_access_cidrs" ]
4548 }
4649
@@ -52,17 +55,37 @@ module "cluster" {
5255 provider_key_arn = local.cfg[" cluster_encryption_key_arn" ]
5356 }
5457
55- enabled_cluster_log_types = local. cfg [" enabled_cluster_log_types" ]
56-
57- default_node_pool = local. cfg [" default_node_pool" ]
58+ enabled_cluster_log_types = try (coalesce (local. cfg [" enabled_cluster_log_types" ], null ), [" api" , " audit" , " authenticator" , " controllerManager" , " scheduler" ])
59+
60+ default_node_pool = {
61+ instance_types = try (local. default_node_pool_cfg [" instance_types" ], null )
62+ desired_capacity = try (coalesce (local. default_node_pool_cfg [" desired_capacity" ], null ), 1 )
63+ max_size = try (coalesce (local. default_node_pool_cfg [" max_size" ], null ), 1 )
64+ min_size = try (coalesce (local. default_node_pool_cfg [" min_size" ], null ), 1 )
65+ launch_template = {
66+ metadata_options = try ({
67+ http_endpoint = local.default_node_pool_metadata_options_cfg[" http_endpoint" ]
68+ http_tokens = local.default_node_pool_metadata_options_cfg[" http_tokens" ]
69+ http_put_response_hop_limit = local.default_node_pool_metadata_options_cfg[" http_put_response_hop_limit" ]
70+ http_protocol_ipv6 = local.default_node_pool_metadata_options_cfg[" http_protocol_ipv6" ]
71+ instance_metadata_tags = local.default_node_pool_metadata_options_cfg[" instance_metadata_tags" ]
72+ }, null )
73+ }
74+ additional_node_tags = try (local. default_node_pool_cfg [" additional_node_tags" ], null )
75+ labels = try (coalesce (local. default_node_pool_cfg [" labels" ], null ), {})
76+ root_device_volume_size = try (coalesce (local. default_node_pool_cfg [" root_device_volume_size" ], null ), 20 )
77+ root_device_encrypted = try (local. default_node_pool_cfg [" root_device_encrypted" ], null )
78+ ami_type = try (local. default_node_pool_cfg [" ami_type" ], null )
79+ ami_release_version = try (local. default_node_pool_cfg [" ami_release_version" ], null )
80+ }
5881
5982 taints = toset ([])
6083
61- aws_auth_map_roles = local. cfg [" cluster_aws_auth_map_roles" ]
62- aws_auth_map_users = local. cfg [" cluster_aws_auth_map_users" ]
63- aws_auth_map_accounts = local. cfg [" cluster_aws_auth_map_accounts" ]
84+ aws_auth_map_roles = try ( coalesce ( local. cfg [" cluster_aws_auth_map_roles" ], null ), " " )
85+ aws_auth_map_users = try ( coalesce ( local. cfg [" cluster_aws_auth_map_users" ], null ), " " )
86+ aws_auth_map_accounts = try ( coalesce ( local. cfg [" cluster_aws_auth_map_accounts" ], null ), " " )
6487
65- disable_default_ingress = local. cfg [" disable_default_ingress" ]
88+ disable_default_ingress = try ( coalesce ( local. cfg [" disable_default_ingress" ], null ), false )
6689
67- disable_openid_connect_provider = local. cfg [" disable_openid_connect_provider" ]
90+ disable_openid_connect_provider = try ( coalesce ( local. cfg [" disable_openid_connect_provider" ], null ), false )
6891}
0 commit comments