main.tf (43 lines of code) (raw):
/**
* Copyright 2024 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
module "project-services" {
source = "terraform-google-modules/project-factory/google//modules/project_services"
version = "17.0.0"
disable_services_on_destroy = false
project_id = var.project_id
enable_apis = var.enable_apis
activate_apis = compact([
"aiplatform.googleapis.com",
var.database_type == "alloydb" ? "alloydb.googleapis.com" : "",
"artifactregistry.googleapis.com",
"cloudapis.googleapis.com",
"cloudbuild.googleapis.com",
"compute.googleapis.com",
"config.googleapis.com",
"dns.googleapis.com",
"iam.googleapis.com",
"run.googleapis.com",
"secretmanager.googleapis.com",
"serviceusage.googleapis.com",
var.database_type == "spanner" ? "spanner.googleapis.com" : "",
"sqladmin.googleapis.com",
"storage-api.googleapis.com",
"storage.googleapis.com",
])
}
resource "random_id" "id" {
byte_length = 4
}