1*55e87721SMatt Gilbrideterraform { 2*55e87721SMatt Gilbride required_providers { 3*55e87721SMatt Gilbride google = { 4*55e87721SMatt Gilbride source = "hashicorp/google" 5*55e87721SMatt Gilbride } 6*55e87721SMatt Gilbride } 7*55e87721SMatt Gilbride} 8*55e87721SMatt Gilbrideresource "google_project_service" "compute" { 9*55e87721SMatt Gilbride service = "compute.googleapis.com" 10*55e87721SMatt Gilbride project = var.inputs.project_id 11*55e87721SMatt Gilbride count = var.inputs.should_enable_apis_on_apply ? 1 : 0 12*55e87721SMatt Gilbride disable_on_destroy = var.inputs.should_disable_apis_on_destroy 13*55e87721SMatt Gilbride} 14*55e87721SMatt Gilbrideresource "google_project_service" "container" { 15*55e87721SMatt Gilbride service = "container.googleapis.com" 16*55e87721SMatt Gilbride project = var.inputs.project_id 17*55e87721SMatt Gilbride count = var.inputs.should_enable_apis_on_apply ? 1 : 0 18*55e87721SMatt Gilbride disable_on_destroy = var.inputs.should_disable_apis_on_destroy 19*55e87721SMatt Gilbride} 20*55e87721SMatt Gilbridelocals { 21*55e87721SMatt Gilbride container_network_name = "java-container-network" 22*55e87721SMatt Gilbride} 23*55e87721SMatt Gilbrideresource "google_compute_network" "java_container_network" { 24*55e87721SMatt Gilbride count = var.inputs.should_create_container_network ? 1 : 0 25*55e87721SMatt Gilbride name = local.container_network_name 26*55e87721SMatt Gilbride auto_create_subnetworks = true 27*55e87721SMatt Gilbride depends_on = [ 28*55e87721SMatt Gilbride google_project_service.compute, 29*55e87721SMatt Gilbride google_project_service.container 30*55e87721SMatt Gilbride ] 31*55e87721SMatt Gilbride} 32*55e87721SMatt Gilbridedata "google_compute_network" "existing_network" { 33*55e87721SMatt Gilbride count = var.inputs.should_create_container_network ? 0 : 1 34*55e87721SMatt Gilbride name = local.container_network_name 35*55e87721SMatt Gilbride} 36