variable "billing_account_id" { type = string description = "Customer Billing Account ID - REPLACE SOON with billing subaccount resource" } variable "requestor" { type = string description = "The person that made the initial request for the GCP Customer Folder" } variable "mcomm_group_email" { type = string description = "The MCommunity Group to be given permission to the GCP Customer Folder" } variable "shortcode" { type = string description = "The default shortcode to associate with the billing subaccount" } variable "billing_contact" { type = string description = "A contact to use for billing questions about the GCP Billing Subaccount" } variable "environment" { type = string description = "The environment the customer folder will be created in. Defaults to \"prod\"" default = "prod" validation { condition = var.environment == "dev" || var.environment == "test" || var.environment == "prod" error_message = "The environment value must be one of \"dev\",\"test\", or \"prod\"." } } variable "division" { type = string description = "Must be one of \"campus\",\"its\", \"michigan_medicine\", or \"hipaa\"" validation { condition = var.division == "campus" || var.division == "its" || var.division == "michigan_medicine" || var.division == "hipaa" error_message = "The division value must be one of \"campus\",\"its\", \"michigan_medicine\", or \"hipaa\"." } } variable "customer_bucket_project_id" { type = string description = "The project that will contain customer Terraform state buckets" } variable "customer_service_account_project_id" { type = string description = "The project that will contain customer Terraform service accounts" } variable "provisioning_service_account_email" { type = string description = "The email of the service account used to provision customers" } variable "folder_display_name" { type = string description = "Override the display name of customer folder. Not customer facing, should be set as close to the customer's mcomm group email as possible." default = "" validation { condition = var.folder_display_name != "" ? length(var.folder_display_name) <= 30 : true error_message = "The folder_display_name must be less than or equal to 30 characters in length." } validation { condition = can(regex("^[[:alnum:]][\\w\\s-]*[[:alnum:]]$")) || var.folder_display_name == "" error_message = "The folder_display_name must start and end with a letter or number and contain only letters, numbers, '_', ' ', and '-'." } } variable "customer_is_shared_vpc_admin" { type = bool description = "Should the customer be given Shared VPC Admin permission to the customer folder. Defaults to false." default = false }