xref: /aosp_15_r20/external/google-cloud-java/java-dataproc/.cloud/main.tf (revision 55e87721aa1bc457b326496a7ca40f3ea1a63287)
1terraform {
2  required_providers {
3    google = {
4      source = "hashicorp/google"
5    }
6  }
7}
8resource "google_project_service" "compute" {
9  service            = "compute.googleapis.com"
10  project            = var.inputs.project_id
11  count              = var.inputs.should_enable_apis_on_apply ? 1 : 0
12  disable_on_destroy = var.inputs.should_disable_apis_on_destroy
13}
14resource "google_project_service" "dataproc" {
15  service            = "dataproc.googleapis.com"
16  project            = var.inputs.project_id
17  count              = var.inputs.should_enable_apis_on_apply ? 1 : 0
18  disable_on_destroy = var.inputs.should_disable_apis_on_destroy
19}
20data "google_compute_default_service_account" "default" {
21  depends_on = [google_project_service.compute, google_project_service.dataproc]
22}
23resource "google_project_iam_member" "dataproc_iam" {
24  project = var.inputs.project_id
25  role    = "roles/dataproc.worker"
26  member  = "serviceAccount:${data.google_compute_default_service_account.default.email}"
27}
28