diff --git a/modules/fabric-net-svpc-access/main.tf b/modules/fabric-net-svpc-access/main.tf index bb9104bd..beae70b8 100644 --- a/modules/fabric-net-svpc-access/main.tf +++ b/modules/fabric-net-svpc-access/main.tf @@ -15,11 +15,10 @@ */ resource "google_compute_shared_vpc_service_project" "projects" { - provider = google-beta - - count = var.service_project_num + provider = google-beta + for_each = { for i, k in toset(var.service_project_ids) : k => i } host_project = var.host_project_id - service_project = element(var.service_project_ids, count.index) + service_project = each.key } resource "google_compute_subnetwork_iam_binding" "network_users" { diff --git a/modules/fabric-net-svpc-access/outputs.tf b/modules/fabric-net-svpc-access/outputs.tf index dc792594..8cd46850 100644 --- a/modules/fabric-net-svpc-access/outputs.tf +++ b/modules/fabric-net-svpc-access/outputs.tf @@ -16,5 +16,7 @@ output "service_projects" { description = "Project ids of the services with access to all subnets." - value = google_compute_shared_vpc_service_project.projects.*.service_project + value = [ + for i, k in google_compute_shared_vpc_service_project.projects : k.service_project + ] }