Skip to content

Commit 61796be

Browse files
adrientheboJberlinsky
authored andcommitted
Truncate optional service account name, simplify service account expansion
1 parent 093b229 commit 61796be

File tree

6 files changed

+24
-12
lines changed

6 files changed

+24
-12
lines changed

autogen/cluster_regional.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ resource "google_container_cluster" "primary" {
8181
name = "default-pool"
8282

8383
node_config {
84-
service_account = "${lookup(var.node_pools[0], "service_account", (var.service_account == "create") ? element(concat(google_service_account.cluster_service_account.*.email, list("")), 0) : var.service_account)}"
84+
service_account = "${lookup(var.node_pools[0], "service_account", local.service_account)}"
8585
}
8686
}
8787
{% if private_cluster %}
@@ -127,7 +127,7 @@ resource "google_container_node_pool" "pools" {
127127

128128
disk_size_gb = "${lookup(var.node_pools[count.index], "disk_size_gb", 100)}"
129129
disk_type = "${lookup(var.node_pools[count.index], "disk_type", "pd-standard")}"
130-
service_account = "${lookup(var.node_pools[count.index], "service_account", (var.service_account == "create") ? element(concat(google_service_account.cluster_service_account.*.email, list("")), 0) : var.service_account)}"
130+
service_account = "${lookup(var.node_pools[count.index], "service_account", local.service_account)}"
131131
preemptible = "${lookup(var.node_pools[count.index], "preemptible", false)}"
132132

133133
oauth_scopes = [

autogen/cluster_zonal.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ resource "google_container_cluster" "zonal_primary" {
8181
name = "default-pool"
8282

8383
node_config {
84-
service_account = "${lookup(var.node_pools[0], "service_account", (var.service_account == "create") ? element(concat(google_service_account.cluster_service_account.*.email, list("")), 0) : var.service_account)}"
84+
service_account = "${lookup(var.node_pools[0], "service_account", local.service_account)}"
8585
}
8686
}
8787
{% if private_cluster %}
@@ -127,7 +127,7 @@ resource "google_container_node_pool" "zonal_pools" {
127127

128128
disk_size_gb = "${lookup(var.node_pools[count.index], "disk_size_gb", 100)}"
129129
disk_type = "${lookup(var.node_pools[count.index], "disk_type", "pd-standard")}"
130-
service_account = "${lookup(var.node_pools[count.index], "service_account", (var.service_account == "create") ? element(concat(google_service_account.cluster_service_account.*.email, list("")), 0) : var.service_account)}"
130+
service_account = "${lookup(var.node_pools[count.index], "service_account", local.service_account)}"
131131
preemptible = "${lookup(var.node_pools[count.index], "preemptible", false)}"
132132

133133
oauth_scopes = [

autogen/sa.tf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,14 @@
1616

1717
{{ autogeneration_note }}
1818

19+
locals {
20+
service_account_list = "${compact(concat(google_service_account.cluster_service_account.*.email, list("dummy")))}"
21+
service_account = "${var.service_account == "create" ? element(local.service_account_list, 0) : var.service_account}"
22+
}
23+
1924
resource "google_service_account" "cluster_service_account" {
20-
count = "${(var.service_account == "create") ? 1 : 0}"
21-
account_id = "tf-gke-${var.name}"
25+
count = "${var.service_account == "create" ? 1 : 0}"
26+
project = "${var.project_id}"
27+
account_id = "tf-gke-${substr(var.name, 0, 20)}"
2228
display_name = "Terraform-managed service account for cluster ${var.name}"
2329
}

cluster_regional.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ resource "google_container_cluster" "primary" {
8181
name = "default-pool"
8282

8383
node_config {
84-
service_account = "${lookup(var.node_pools[0], "service_account", (var.service_account == "create") ? element(concat(google_service_account.cluster_service_account.*.email, list("")), 0) : var.service_account)}"
84+
service_account = "${lookup(var.node_pools[0], "service_account", local.service_account)}"
8585
}
8686
}
8787

@@ -121,7 +121,7 @@ resource "google_container_node_pool" "pools" {
121121

122122
disk_size_gb = "${lookup(var.node_pools[count.index], "disk_size_gb", 100)}"
123123
disk_type = "${lookup(var.node_pools[count.index], "disk_type", "pd-standard")}"
124-
service_account = "${lookup(var.node_pools[count.index], "service_account", (var.service_account == "create") ? element(concat(google_service_account.cluster_service_account.*.email, list("")), 0) : var.service_account)}"
124+
service_account = "${lookup(var.node_pools[count.index], "service_account", local.service_account)}"
125125
preemptible = "${lookup(var.node_pools[count.index], "preemptible", false)}"
126126

127127
oauth_scopes = [

cluster_zonal.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ resource "google_container_cluster" "zonal_primary" {
8181
name = "default-pool"
8282

8383
node_config {
84-
service_account = "${lookup(var.node_pools[0], "service_account", (var.service_account == "create") ? element(concat(google_service_account.cluster_service_account.*.email, list("")), 0) : var.service_account)}"
84+
service_account = "${lookup(var.node_pools[0], "service_account", local.service_account)}"
8585
}
8686
}
8787

@@ -121,7 +121,7 @@ resource "google_container_node_pool" "zonal_pools" {
121121

122122
disk_size_gb = "${lookup(var.node_pools[count.index], "disk_size_gb", 100)}"
123123
disk_type = "${lookup(var.node_pools[count.index], "disk_type", "pd-standard")}"
124-
service_account = "${lookup(var.node_pools[count.index], "service_account", (var.service_account == "create") ? element(concat(google_service_account.cluster_service_account.*.email, list("")), 0) : var.service_account)}"
124+
service_account = "${lookup(var.node_pools[count.index], "service_account", local.service_account)}"
125125
preemptible = "${lookup(var.node_pools[count.index], "preemptible", false)}"
126126

127127
oauth_scopes = [

sa.tf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,14 @@
1616

1717
// This file was automatically generated from a template in ./autogen
1818

19+
locals {
20+
service_account_list = "${compact(concat(google_service_account.cluster_service_account.*.email, list("dummy")))}"
21+
service_account = "${var.service_account == "create" ? element(local.service_account_list, 0) : var.service_account}"
22+
}
23+
1924
resource "google_service_account" "cluster_service_account" {
20-
count = "${(var.service_account == "create") ? 1 : 0}"
21-
account_id = "tf-gke-${var.name}"
25+
count = "${var.service_account == "create" ? 1 : 0}"
26+
project = "${var.project_id}"
27+
account_id = "tf-gke-${substr(var.name, 0, 20)}"
2228
display_name = "Terraform-managed service account for cluster ${var.name}"
2329
}

0 commit comments

Comments
 (0)