@@ -11,12 +11,8 @@ locals {
11
11
tags = var.karpenter_default_subnet_selector_tags,
12
12
}
13
13
]
14
- karpenter_node_role = aws_iam_role.workers.name
15
- karpenter_security_group_selector_maps = [{
16
- tags = merge ({
17
- " karpenter.sh/discovery" = module.eks.cluster_name
18
- }, var. additional_karpenter_security_group_selector_tags )
19
- }]
14
+ karpenter_node_role = aws_iam_role.workers.name
15
+ karpenter_security_group_selector_maps = lookup (local. karpenter_security_group_maps , var. karpenter_security_group_selector_terms_type , {})
20
16
karpenter_node_metadata_options = {
21
17
httpEndpoint = " enabled"
22
18
httpProtocolIPv6 = var.cluster_ip_family != " ipv6" ? " disabled" : " enabled"
@@ -69,6 +65,25 @@ locals {
69
65
nodeclass_name = " ${ nodeclass . nodeclass_name } -upgrade"
70
66
})]
71
67
]), local. karpenter_nodepools )
68
+
69
+ # Kaprenter Security Groups Selector
70
+ additional_karpenter_security_group_id_maps = [
71
+ for val in var . additional_karpenter_security_group_selector_ids : {
72
+ " id" = val
73
+ }
74
+ ]
75
+
76
+ karpenter_security_group_maps = {
77
+ tags = [{
78
+ tags = merge ({
79
+ " karpenter.sh/discovery" = module.eks.cluster_name
80
+ }, var. additional_karpenter_security_group_selector_tags )
81
+ }]
82
+ ids = flatten (concat ([{
83
+ " id" = module.eks.cluster_primary_security_group_id
84
+ }, local . additional_karpenter_security_group_id_maps
85
+ ]))
86
+ }
72
87
}
73
88
74
89
module "karpenter" {
0 commit comments