14
14
* limitations under the License.
15
15
*/
16
16
17
+ locals {
18
+ gke_hub_sa_key = var. enable_gke_hub_registration ? google_service_account_key. gke_hub_key [0 ]. private_key : " "
19
+ }
20
+
17
21
data "google_container_cluster" "primary" {
18
22
name = var. cluster_name
19
23
project = var. project_id
@@ -42,18 +46,21 @@ module "asm_install" {
42
46
}
43
47
44
48
resource "google_service_account" "gke_hub_sa" {
49
+ count = var. enable_gke_hub_registration ? 1 : 0
45
50
account_id = var. gke_hub_sa_name
46
51
display_name = " Service Account for GKE Hub Registration"
47
52
}
48
53
49
54
resource "google_project_iam_member" "gke_hub_member" {
55
+ count = var. enable_gke_hub_registration ? 1 : 0
50
56
project = var. project_id
51
57
role = " roles/gkehub.connect"
52
- member = " serviceAccount:${ google_service_account . gke_hub_sa . email } "
58
+ member = " serviceAccount:${ google_service_account . gke_hub_sa [ 0 ] . email } "
53
59
}
54
60
55
61
resource "google_service_account_key" "gke_hub_key" {
56
- service_account_id = google_service_account. gke_hub_sa . name
62
+ count = var. enable_gke_hub_registration ? 1 : 0
63
+ service_account_id = google_service_account. gke_hub_sa [0 ]. name
57
64
}
58
65
59
66
module "gke_hub_registration" {
@@ -64,11 +71,12 @@ module "gke_hub_registration" {
64
71
gcloud_sdk_version = " 293.0.0"
65
72
skip_download = var. skip_gcloud_download
66
73
upgrade = false
74
+ enabled = var. enable_gke_hub_registration
67
75
use_tf_google_credentials_env_var = true
68
76
module_depends_on = [module . asm_install . wait ]
69
77
70
78
create_cmd_entrypoint = " ${ path . module } /scripts/gke_hub_registration.sh"
71
- create_cmd_body = " ${ var . gke_hub_membership_name } ${ var . location } ${ var . cluster_name } ${ google_service_account_key . gke_hub_key . private_key } "
79
+ create_cmd_body = " ${ var . gke_hub_membership_name } ${ var . location } ${ var . cluster_name } ${ local . gke_hub_sa_key } "
72
80
destroy_cmd_entrypoint = " gcloud"
73
81
destroy_cmd_body = " container hub memberships unregister ${ var . gke_hub_membership_name } --gke-cluster=${ var . location } /${ var . cluster_name } "
74
- }
82
+ }
0 commit comments