File tree Expand file tree Collapse file tree 3 files changed +22
-8
lines changed
Expand file tree Collapse file tree 3 files changed +22
-8
lines changed Original file line number Diff line number Diff line change @@ -343,6 +343,20 @@ resource "aws_iam_role_policy" "aws_load_balancer" {
343343 policy = data. aws_iam_policy_document . aws_load_balancer . json
344344}
345345
346+ resource "aws_iam_role" "aws_lbc" {
347+ count = var. aws_load_balancer_iam_role_enabled ? 1 : 0
348+ name = " aws-lbc-${ var . cluster_name } "
349+ path = " /system/"
350+ assume_role_policy = data. aws_iam_policy_document . aws_load_balancer_assume_role_policy . json
351+ }
352+
353+ resource "aws_iam_role_policy" "aws_lbc" {
354+ count = var. aws_load_balancer_iam_role_enabled ? 1 : 0
355+ name = " aws-lbc-${ var . cluster_name } "
356+ role = aws_iam_role. aws_lbc [0 ]. id
357+ policy = data. aws_iam_policy_document . aws_load_balancer . json
358+ }
359+
346360moved {
347361 from = aws_iam_role. aws_load_balancer
348362 to = aws_iam_role. aws_load_balancer [0 ]
Original file line number Diff line number Diff line change @@ -65,13 +65,13 @@ resource "aws_iam_openid_connect_provider" "oidc_provider" {
6565}
6666
6767data "aws_iam_roles" "aws_load_balancer_controller" {
68- name_regex = " ^aws-load-balancer-controller-${ var . cluster_name } $"
68+ name_regex = " ^( aws-load-balancer-controller|aws-lbc) -${ var . cluster_name } $"
6969 path_prefix = " /system/"
7070}
7171
7272locals {
7373 aws_load_balancer_controller_role_exists = var. enable_aws_load_balancer_controller_explicit_deny ? length (data. aws_iam_roles . aws_load_balancer_controller . names ) > 0 : false
74- aws_load_balancer_controller_role_name = local. aws_load_balancer_controller_role_exists ? sort ( tolist ( data. aws_iam_roles . aws_load_balancer_controller . names ))[ 0 ] : null
74+ aws_load_balancer_controller_role_names = local. aws_load_balancer_controller_role_exists ? toset ( data. aws_iam_roles . aws_load_balancer_controller . names ) : toset ([])
7575}
7676
7777data "aws_iam_policy_document" "aws_load_balancer_controller_explicit_deny" {
@@ -84,14 +84,14 @@ data "aws_iam_policy_document" "aws_load_balancer_controller_explicit_deny" {
8484
8585resource "aws_iam_policy" "aws_load_balancer_controller_explicit_deny" {
8686 count = local. aws_load_balancer_controller_role_exists ? 1 : 0
87- name = " aws-load-balancer-controller -${ var . cluster_name } -explicit-deny-elb"
87+ name = " aws-lbc -${ var . cluster_name } -explicit-deny-elb"
8888 path = " /system/"
8989 policy = data. aws_iam_policy_document . aws_load_balancer_controller_explicit_deny . json
9090}
9191
9292resource "aws_iam_role_policy_attachment" "aws_load_balancer_controller_explicit_deny" {
93- count = local. aws_load_balancer_controller_role_exists ? 1 : 0
94- role = local . aws_load_balancer_controller_role_name
93+ for_each = local. aws_load_balancer_controller_role_names
94+ role = each . value
9595 policy_arn = aws_iam_policy. aws_load_balancer_controller_explicit_deny [0 ]. arn
9696}
97-
97+
Original file line number Diff line number Diff line change @@ -7,8 +7,8 @@ variable "cluster_name" {
77 description = " The name of the cluster. Has to be unique per region per account."
88 type = string
99 validation {
10- condition = can (regex (" \\ w- " , var. cluster_name ))
11- error_message = " Cluster name must be lowercase alphanumeric characters"
10+ condition = can (regex (" ^[a-z0-9]([a-z0-9-]*[a-z0-9])?$ " , var. cluster_name )) && length (var . cluster_name ) <= 48
11+ error_message = " Cluster name must contain only lowercase alphanumeric characters or hyphens and be at most 48 characters long "
1212 }
1313}
1414
You can’t perform that action at this time.
0 commit comments