diff --git a/4-projects/modules/ml_infra_projects/outputs.tf b/4-projects/modules/ml_infra_projects/outputs.tf
index ce0fabef..3b73df7c 100644
--- a/4-projects/modules/ml_infra_projects/outputs.tf
+++ b/4-projects/modules/ml_infra_projects/outputs.tf
@@ -20,26 +20,26 @@ output "service_catalog_project_id" {
}
output "common_artifacts_project_id" {
- description = "App Infra Artifacts Project ID"
+ description = "App Infra Artifacts Project ID."
value = try(module.app_infra_artifacts_project.project_id, "")
}
output "service_catalog_repo_name" {
- description = "The name of the Service Catalog repository"
+ description = "The name of the Service Catalog repository."
value = google_sourcerepo_repository.service_catalog.name
}
output "service_catalog_repo_id" {
- description = "ID of the Service Catalog repository"
+ description = "ID of the Service Catalog repository."
value = google_sourcerepo_repository.service_catalog.id
}
output "artifacts_repo_name" {
- description = "The name of the Artifacts repository"
+ description = "The name of the Artifacts repository."
value = google_sourcerepo_repository.artifact_repo.name
}
output "artifacts_repo_id" {
- description = "ID of the Artifacts repository"
+ description = "ID of the Artifacts repository."
value = google_sourcerepo_repository.artifact_repo.id
}
diff --git a/4-projects/modules/ml_infra_projects/variables.tf b/4-projects/modules/ml_infra_projects/variables.tf
index ad3c62e0..07b4e176 100644
--- a/4-projects/modules/ml_infra_projects/variables.tf
+++ b/4-projects/modules/ml_infra_projects/variables.tf
@@ -15,22 +15,22 @@
*/
variable "org_id" {
- description = "The Organization ID"
+ description = "The Organization ID."
type = string
}
variable "billing_account" {
- description = "The ID of the billing account to associated this project with"
+ description = "The ID of the billing account to associated this project with."
type = string
}
variable "folder_id" {
- description = "The folder id where project will be created"
+ description = "The folder id where project will be created."
type = string
}
variable "environment" {
- description = "The environment the single project belongs to"
+ description = "The environment the single project belongs to."
type = string
}
@@ -58,7 +58,7 @@ variable "project_prefix" {
}
variable "key_rings" {
- description = "Keyrings to attach project key to"
+ description = "Keyrings to attach project key to."
type = list(string)
}
@@ -68,23 +68,23 @@ variable "remote_state_bucket" {
}
variable "business_code" {
- description = "The code that describes which business unit owns the project"
+ description = "The code that describes which business unit owns the project."
type = string
default = "abcd"
}
variable "billing_code" {
- description = "The code that's used to provide chargeback information"
+ description = "The code that's used to provide chargeback information."
type = string
}
variable "primary_contact" {
- description = "The primary email contact for the project"
+ description = "The primary email contact for the project."
type = string
}
variable "secondary_contact" {
- description = "The secondary email contact for the project"
+ description = "The secondary email contact for the project."
type = string
default = ""
}
@@ -96,7 +96,7 @@ variable "vpc_type" {
}
variable "shared_vpc_host_project_id" {
- description = "Shared VPC host project ID"
+ description = "Shared VPC host project ID."
type = string
default = ""
}
@@ -108,19 +108,19 @@ variable "shared_vpc_subnets" {
}
variable "vpc_service_control_attach_enabled" {
- description = "Whether the project will be attached to a VPC Service Control Perimeter"
+ description = "Whether the project will be attached to a VPC Service Control Perimeter."
type = bool
default = false
}
variable "vpc_service_control_perimeter_name" {
- description = "The name of a VPC Service Control Perimeter to add the created project to"
+ description = "The name of a VPC Service Control Perimeter to add the created project to."
type = string
default = null
}
variable "vpc_service_control_sleep_duration" {
- description = "The duration to sleep in seconds before adding the project to a shared VPC after the project is added to the VPC Service Control Perimeter"
+ description = "The duration to sleep in seconds before adding the project to a shared VPC after the project is added to the VPC Service Control Perimeter."
type = string
default = "5s"
}
@@ -138,13 +138,13 @@ variable "sa_roles" {
}
variable "enable_cloudbuild_deploy" {
- description = "Enable infra deployment using Cloud Build"
+ description = "Enable infra deployment using Cloud Build."
type = bool
default = false
}
variable "key_rotation_period" {
- description = "Rotation period in seconds to be used for KMS Key"
+ description = "Rotation period in seconds to be used for KMS Key."
type = string
default = "7776000s"
}
@@ -156,22 +156,22 @@ variable "default_service_account" {
}
variable "cloud_source_service_catalog_repo_name" {
- description = "Name to give the cloud source repository for Service Catalog"
+ description = "Name to give the cloud source repository for Service Catalog."
type = string
}
variable "cloud_source_artifacts_repo_name" {
- description = "Name to give the could source repository for Artifacts"
+ description = "Name to give the could source repository for Artifacts."
type = string
}
variable "artifacts_infra_pipeline_sa" {
- description = "Artifacts SA to be used by the Infra Pipeline CloudBuild trigger"
+ description = "Artifacts SA to be used by the Infra Pipeline CloudBuild trigger."
type = string
}
variable "service_catalog_infra_pipeline_sa" {
- description = "Service Catalog SA to be used by the Infra Pipeline CloudBuild trigger"
+ description = "Service Catalog SA to be used by the Infra Pipeline CloudBuild trigger."
type = string
}
diff --git a/4-projects/modules/ml_single_project/README.md b/4-projects/modules/ml_single_project/README.md
index b860a72b..8165effa 100644
--- a/4-projects/modules/ml_single_project/README.md
+++ b/4-projects/modules/ml_single_project/README.md
@@ -8,35 +8,35 @@ Create and manage a Google Cloud project with various configurations and roles r
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
-| activate\_apis | The api to activate for the GCP project | `list(string)` | `[]` | no |
+| activate\_apis | The api to activate for the GCP project. | `list(string)` | `[]` | no |
| app\_infra\_pipeline\_service\_accounts | The Service Accounts from App Infra Pipeline. | `map(string)` | `{}` | no |
-| application\_name | The name of application where GCP resources relate | `string` | n/a | yes |
-| billing\_account | The ID of the billing account to associated this project with | `string` | n/a | yes |
-| billing\_code | The code that's used to provide chargeback information | `string` | n/a | yes |
-| business\_code | The code that describes which business unit owns the project | `string` | `"abcd"` | no |
+| application\_name | The name of application where GCP resources relate. | `string` | n/a | yes |
+| billing\_account | The ID of the billing account to associated this project with. | `string` | n/a | yes |
+| billing\_code | The code that's used to provide chargeback information. | `string` | n/a | yes |
+| business\_code | The code that describes which business unit owns the project. | `string` | `"abcd"` | no |
| default\_service\_account | Project default service account setting: can be one of `delete`, `depriviledge`, `keep` or `disable`. | `string` | `"disable"` | no |
-| enable\_cloudbuild\_deploy | Enable infra deployment using Cloud Build | `bool` | `false` | no |
-| environment | The environment the single project belongs to | `string` | n/a | yes |
+| enable\_cloudbuild\_deploy | Enable infra deployment using Cloud Build. | `bool` | `false` | no |
+| environment | The environment the project belongs to. | `string` | n/a | yes |
| environment\_kms\_project\_id | Environment level KMS Project ID. | `string` | n/a | yes |
-| folder\_id | The folder id where project will be created | `string` | n/a | yes |
-| key\_rings | Keyrings to attach project key to | `list(string)` | n/a | yes |
-| key\_rotation\_period | Rotation period in seconds to be used for KMS Key | `string` | `"7776000s"` | no |
-| org\_id | The organization id for the associated services | `string` | n/a | yes |
+| folder\_id | The folder id where project will be created. | `string` | n/a | yes |
+| key\_rings | Keyrings to attach project key to. | `list(string)` | n/a | yes |
+| key\_rotation\_period | Rotation period in seconds to be used for KMS Key. | `string` | `"7776000s"` | no |
+| org\_id | The Organization ID. | `string` | n/a | yes |
| prevent\_destroy | Prevent Key destruction. | `bool` | n/a | yes |
-| primary\_contact | The primary email contact for the project | `string` | n/a | yes |
+| primary\_contact | The primary email contact for the project. | `string` | n/a | yes |
| project\_budget | Budget configuration.
budget\_amount: The amount to use as the budget.
alert\_spent\_percents: A list of percentages of the budget to alert on when threshold is exceeded.
alert\_pubsub\_topic: The name of the Cloud Pub/Sub topic where budget related messages will be published, in the form of `projects/{project_id}/topics/{topic_id}`.
alert\_spend\_basis: The type of basis used to determine if spend has passed the threshold. Possible choices are `CURRENT_SPEND` or `FORECASTED_SPEND` (default). |
object({| `{}` | no | | project\_name | Project Name. | `string` | n/a | yes | | project\_prefix | Name prefix to use for projects created. | `string` | `"prj"` | no | | project\_suffix | The name of the GCP project. Max 16 characters with 3 character business unit code. | `string` | n/a | yes | | remote\_state\_bucket | Backend bucket to load Terraform Remote State Data from previous steps. | `string` | n/a | yes | | sa\_roles | A list of roles to give the Service Account from App Infra Pipeline. | `map(list(string))` | `{}` | no | -| secondary\_contact | The secondary email contact for the project | `string` | `""` | no | -| shared\_vpc\_host\_project\_id | Shared VPC host project ID | `string` | `""` | no | +| secondary\_contact | The secondary email contact for the project. | `string` | `""` | no | +| shared\_vpc\_host\_project\_id | Shared VPC host project ID. | `string` | `""` | no | | shared\_vpc\_subnets | List of the shared vpc subnets self links. | `list(string)` | `[]` | no | -| vpc\_service\_control\_attach\_enabled | Whether the project will be attached to a VPC Service Control Perimeter | `bool` | `false` | no | -| vpc\_service\_control\_perimeter\_name | The name of a VPC Service Control Perimeter to add the created project to | `string` | `null` | no | -| vpc\_service\_control\_sleep\_duration | The duration to sleep in seconds before adding the project to a shared VPC after the project is added to the VPC Service Control Perimeter | `string` | `"5s"` | no | -| vpc\_type | The type of VPC to attach the project to. Possible options are base or restricted. | `string` | `""` | no | +| vpc\_service\_control\_attach\_enabled | Whether the project will be attached to a VPC Service Control Perimeter. | `bool` | `false` | no | +| vpc\_service\_control\_perimeter\_name | The name of a VPC Service Control Perimeter to add the created project to. | `string` | `null` | no | +| vpc\_service\_control\_sleep\_duration | The duration to sleep in seconds before adding the project to a shared VPC after the project is added to the VPC Service Control Perimeter. | `string` | `"5s"` | no | +| vpc\_type | The type of VPC to attach the project to. Possible options are `base` or `restricted`. | `string` | `""` | no | ## Outputs @@ -45,8 +45,8 @@ Create and manage a Google Cloud project with various configurations and roles r | enabled\_apis | VPC Service Control services. | | kms\_keys | Keys created for the project. | | project\_id | Project ID. | -| project\_name | Name of the Project. | +| project\_name | Project Name. | | project\_number | Project number. | -| sa | Project SA email | +| sa | Project SA email. | diff --git a/4-projects/modules/ml_single_project/outputs.tf b/4-projects/modules/ml_single_project/outputs.tf index 97109f45..b4aba602 100644 --- a/4-projects/modules/ml_single_project/outputs.tf +++ b/4-projects/modules/ml_single_project/outputs.tf @@ -20,7 +20,7 @@ output "project_id" { } output "sa" { - description = "Project SA email" + description = "Project SA email." value = module.project.service_account_email } diff --git a/4-projects/modules/ml_single_project/variables.tf b/4-projects/modules/ml_single_project/variables.tf index 7d5663ef..d55b3647 100644 --- a/4-projects/modules/ml_single_project/variables.tf +++ b/4-projects/modules/ml_single_project/variables.tf @@ -15,17 +15,17 @@ */ variable "org_id" { - description = "The Organization ID" + description = "The Organization ID." type = string } variable "folder_id" { - description = "The folder id where project will be created" + description = "The folder id where project will be created." type = string } variable "billing_account" { - description = "The ID of the billing account to associated this project with" + description = "The ID of the billing account to associated this project with." type = string } @@ -35,40 +35,40 @@ variable "project_suffix" { } variable "application_name" { - description = "The name of application where GCP resources relate" + description = "The name of application where GCP resources relate." type = string } variable "billing_code" { - description = "The code that's used to provide chargeback information" + description = "The code that's used to provide chargeback information." type = string } variable "primary_contact" { - description = "The primary email contact for the project" + description = "The primary email contact for the project." type = string } variable "secondary_contact" { - description = "The secondary email contact for the project" + description = "The secondary email contact for the project." type = string default = "" } variable "business_code" { - description = "The code that describes which business unit owns the project" + description = "The code that describes which business unit owns the project." type = string default = "abcd" } variable "activate_apis" { - description = "The api to activate for the GCP project" + description = "The api to activate for the GCP project." type = list(string) default = [] } variable "environment" { - description = "The environment the project belongs to" + description = "The environment the project belongs to." type = string } @@ -79,7 +79,7 @@ variable "vpc_type" { } variable "shared_vpc_host_project_id" { - description = "Shared VPC host project ID" + description = "Shared VPC host project ID." type = string default = "" } @@ -91,19 +91,19 @@ variable "shared_vpc_subnets" { } variable "vpc_service_control_attach_enabled" { - description = "Whether the project will be attached to a VPC Service Control Perimeter" + description = "Whether the project will be attached to a VPC Service Control Perimeter." type = bool default = false } variable "vpc_service_control_perimeter_name" { - description = "The name of a VPC Service Control Perimeter to add the created project to" + description = "The name of a VPC Service Control Perimeter to add the created project to." type = string default = null } variable "vpc_service_control_sleep_duration" { - description = "The duration to sleep in seconds before adding the project to a shared VPC after the project is added to the VPC Service Control Perimeter" + description = "The duration to sleep in seconds before adding the project to a shared VPC after the project is added to the VPC Service Control Perimeter." type = string default = "5s" } @@ -144,19 +144,19 @@ variable "sa_roles" { } variable "enable_cloudbuild_deploy" { - description = "Enable infra deployment using Cloud Build" + description = "Enable infra deployment using Cloud Build." type = bool default = false } variable "key_rotation_period" { - description = "Rotation period in seconds to be used for KMS Key" + description = "Rotation period in seconds to be used for KMS Key." type = string default = "7776000s" } variable "key_rings" { - description = "Keyrings to attach project key to" + description = "Keyrings to attach project key to." type = list(string) }
budget_amount = optional(number, 1000)
alert_spent_percents = optional(list(number), [1.2])
alert_pubsub_topic = optional(string, null)
alert_spend_basis = optional(string, "FORECASTED_SPEND")
})