Merge branch 'master' into 1849-implement-cloud-run-module-version-2
This commit is contained in:
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ module "bucket" {
|
||||
location = "EU"
|
||||
}
|
||||
|
||||
# tftest skip e2e
|
||||
# tftest modules=3 skip e2e
|
||||
```
|
||||
|
||||
### Example with retention policy and logging
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,100 +1,134 @@
|
||||
# Google Cloud VMWare Engine Private Cloud Module
|
||||
|
||||
This module implements the creation and management of a Google Cloud VMWare Engine Private Cloud with its management cluster. If configured, it also creates the VMWare engine network or it can work with an existing one. The creation of the private connection with the user VPC requires the execution of the [Google SDK command](https://cloud.google.com/sdk/gcloud/reference/vmware/private-connections/create#--routing-mode) the module provides as an output.
|
||||
The module manages one or more Google Cloud VMWare Engine Private Clouds.
|
||||
|
||||
It can either create a new VMWare engine network shared between the private clouds or it can use an existing one. The module also creates peering connections to users' VPCs or other VMware engine networks.
|
||||
|
||||
To understand the limits and to properly configure the vSphere/vSAN subnets CIDR range please refer to the [GCVE public documentation](https://cloud.google.com/vmware-engine/docs/quickstart-networking-requirements).
|
||||
|
||||
Be aware that the deployment of this module might require up to 2 hours depending on the selected private cloud target zone.
|
||||
The deployment might require up to 2 hours, depending on the selected private cloud target zone.
|
||||
|
||||
<!-- BEGIN TOC -->
|
||||
- [Limitations](#limitations)
|
||||
- [Basic Private Cloud Creation](#basic-private-cloud-creation)
|
||||
- [Private Cloud Creation with custom nodes and cores count](#private-cloud-creation-with-custom-nodes-and-cores-count)
|
||||
- [Customize management cluster configs](#customize-management-cluster-configs)
|
||||
- [Create additional clusters](#create-additional-clusters)
|
||||
- [Variables](#variables)
|
||||
- [Outputs](#outputs)
|
||||
<!-- END TOC -->
|
||||
|
||||
## Limitations
|
||||
At the moment this module doesn't support the following use cases:
|
||||
- Single node private cloud
|
||||
- Stretched private cloud
|
||||
|
||||
The module (and the underlying resource) still don't support the creation of stretched (regional) private clouds.
|
||||
|
||||
## Basic Private Cloud Creation
|
||||
|
||||
```hcl
|
||||
module "gcve-pc" {
|
||||
source = "./fabric/modules/gcve-private-cloud"
|
||||
name = "gcve-pc"
|
||||
prefix = "gcve-pc"
|
||||
project_id = "gcve-test-project"
|
||||
zone = "europe-west8-a"
|
||||
cidr = "192.168.0.0/24"
|
||||
|
||||
private_connections = {
|
||||
vmw_network_peerings = {
|
||||
transit-conn1 = {
|
||||
name = "transit-conn1"
|
||||
network_self_link = "projects/test-prj-gcve-01/global/networks/default"
|
||||
tenant_host_project = "g39a814990532d10ap-tp"
|
||||
type = "PRIVATE_SERVICE_ACCESS"
|
||||
routing_mode = "REGIONAL"
|
||||
peer_network = "projects/test-prj-gcve-01/global/networks/default"
|
||||
}
|
||||
}
|
||||
|
||||
vmw_private_cloud_configs = {
|
||||
pcc_one = {
|
||||
cidr = "192.168.0.0/24"
|
||||
zone = "europe-west8-a"
|
||||
}
|
||||
}
|
||||
}
|
||||
# tftest modules=1 resources=2 inventory=basic.yaml
|
||||
# tftest modules=1 resources=3 inventory=basic.yaml
|
||||
```
|
||||
## Private Cloud Creation with custom nodes and cores count
|
||||
|
||||
## Customize management cluster configs
|
||||
|
||||
You can customize the management cluster of each VMware engine private cloud.
|
||||
|
||||
```hcl
|
||||
module "gcve-pc" {
|
||||
source = "./fabric/modules/gcve-private-cloud"
|
||||
name = "gcve-pc"
|
||||
prefix = "gcve-pc"
|
||||
project_id = "gcve-test-project"
|
||||
zone = "europe-west8-a"
|
||||
cidr = "192.168.0.0/24"
|
||||
|
||||
management_cluster_config = {
|
||||
node_type_id = "standard-72"
|
||||
node_count = 6
|
||||
custom_core_count = 28
|
||||
vmw_network_peerings = {
|
||||
transit-conn1 = {
|
||||
peer_network = "projects/test-prj-gcve-01/global/networks/default"
|
||||
}
|
||||
}
|
||||
|
||||
private_connections = {
|
||||
transit-conn1 = {
|
||||
name = "transit-conn1"
|
||||
network_self_link = "projects/test-prj-gcve-01/global/networks/default"
|
||||
tenant_host_project = "g39a814990532d10ap-tp"
|
||||
type = "PRIVATE_SERVICE_ACCESS"
|
||||
routing_mode = "REGIONAL"
|
||||
vmw_private_cloud_configs = {
|
||||
pcc_one = {
|
||||
cidr = "192.168.0.0/24"
|
||||
management_cluster_config = {
|
||||
node_type_id = "standard-72"
|
||||
node_count = 6
|
||||
custom_core_count = 28
|
||||
}
|
||||
zone = "europe-west8-a"
|
||||
}
|
||||
}
|
||||
}
|
||||
# tftest modules=1 resources=2 inventory=custom.yaml
|
||||
# tftest modules=1 resources=3 inventory=custom-management.yaml
|
||||
```
|
||||
|
||||
## Create additional clusters
|
||||
|
||||
You can optionally create additional clusters in each VMware engine private cloud.
|
||||
|
||||
```hcl
|
||||
module "gcve-pc" {
|
||||
source = "./fabric/modules/gcve-private-cloud"
|
||||
prefix = "gcve-pc"
|
||||
project_id = "gcve-test-project"
|
||||
|
||||
vmw_network_peerings = {
|
||||
transit-conn1 = {
|
||||
peer_network = "projects/test-prj-gcve-01/global/networks/default"
|
||||
}
|
||||
}
|
||||
|
||||
vmw_private_cloud_configs = {
|
||||
pcc_one = {
|
||||
cidr = "192.168.0.0/24"
|
||||
additional_cluster_configs = {
|
||||
test-cluster-one = {
|
||||
node_type_id = "standard-72"
|
||||
node_count = 6
|
||||
custom_core_count = 28
|
||||
}
|
||||
test-cluster-two = {
|
||||
node_type_id = "standard-72"
|
||||
node_count = 4
|
||||
custom_core_count = 28
|
||||
}
|
||||
}
|
||||
zone = "europe-west8-a"
|
||||
}
|
||||
}
|
||||
}
|
||||
# tftest modules=1 resources=5 inventory=additional-clusters.yaml
|
||||
```
|
||||
<!-- BEGIN TFDOC -->
|
||||
## Variables
|
||||
|
||||
| name | description | type | required | default |
|
||||
|---|---|:---:|:---:|:---:|
|
||||
| [cidr](variables.tf#L16) | vSphere/vSAN subnets CIDR range. To undersatnd the limits, please refer to [GCVE network requirements](https://cloud.google.com/vmware-engine/docs/quickstart-networking-requirements). | <code>string</code> | ✓ | |
|
||||
| [name](variables.tf#L42) | Private cloud name. | <code>string</code> | ✓ | |
|
||||
| [project_id](variables.tf#L84) | Project id. | <code>string</code> | ✓ | |
|
||||
| [zone](variables.tf#L101) | Private cloud zone. | <code>string</code> | ✓ | |
|
||||
| [description](variables.tf#L21) | Private cloud description. | <code>string</code> | | <code>"Terraform-managed."</code> |
|
||||
| [management_cluster_config](variables.tf#L27) | Management cluster configuration. | <code title="object({ node_type_id = string node_count = number, custom_core_count = number })">object({…})</code> | | <code title="{ node_type_id = "standard-72", node_count = 3, custom_core_count = null }">{…}</code> |
|
||||
| [private_connections](variables.tf#L47) | VMWare private connections configuration. It is used to create the gcloud command printed as output. | <code title="map(object({ name = string network_self_link = string peering_name = optional(string) tenant_host_project = optional(string) description = optional(string, "Terraform-managed.") type = optional(string, "PRIVATE_SERVICE_ACCESS") routing_mode = optional(string, "REGIONAL") }))">map(object({…}))</code> | | <code>{}</code> |
|
||||
| [vmw_network_create](variables.tf#L89) | Create the VMware Engine network. When set to false, it uses a data source to reference an existing VMware Engine network. | <code>bool</code> | | <code>true</code> |
|
||||
| [vmw_network_description](variables.tf#L95) | VMware Engine network description. | <code>string</code> | | <code>"Terraform-managed."</code> |
|
||||
| [prefix](variables.tf#L17) | Resources name prefix. | <code>string</code> | ✓ | |
|
||||
| [project_id](variables.tf#L22) | Project id. | <code>string</code> | ✓ | |
|
||||
| [vmw_network_config](variables.tf#L27) | VMware Engine network configuration. | <code title="object({ create = optional(bool, true) description = optional(string, "Terraform-managed.") name = optional(string, "default") })">object({…})</code> | | <code>{}</code> |
|
||||
| [vmw_network_peerings](variables.tf#L37) | The network peerings towards users' VPCs or other VMware Engine networks. The key is the peering name suffix. | <code title="map(object({ peer_network = string description = optional(string, "Managed by Terraform.") export_custom_routes = optional(bool, false) export_custom_routes_with_public_ip = optional(bool, false) import_custom_routes = optional(bool, false) import_custom_routes_with_public_ip = optional(bool, false) peer_to_vmware_engine_network = optional(bool, false) }))">map(object({…}))</code> | | <code>{}</code> |
|
||||
| [vmw_private_cloud_configs](variables.tf#L51) | The VMware private cloud configurations. The key is the unique private cloud name suffix. | <code title="map(object({ cidr = string zone = string additional_cluster_configs = optional(map(object({ custom_core_count = optional(number) node_count = optional(number, 3) node_type_id = optional(string, "standard-72") })), {}) management_cluster_config = optional(object({ custom_core_count = optional(number) name = optional(string, "mgmt-cluster") node_count = optional(number, 3) node_type_id = optional(string, "standard-72") }), {}) description = optional(string, "Managed by Terraform.") }))">map(object({…}))</code> | | <code title="{ pcc_one = { cidr = "192.168.0.0/24" additional_cluster_configs = { test-cluster-one = { node_type_id = "standard-72" node_count = 6 custom_core_count = 28 } test-cluster-two = { node_type_id = "standard-72" node_count = 4 custom_core_count = 28 } } zone = "europe-west8-a" } }">{…}</code> |
|
||||
|
||||
## Outputs
|
||||
|
||||
| name | description | sensitive |
|
||||
|---|---|:---:|
|
||||
| [hcx](outputs.tf#L17) | Details about a HCX Cloud Manager appliance. | |
|
||||
| [id](outputs.tf#L22) | ID of the private cloud. | |
|
||||
| [management_cluster](outputs.tf#L27) | Details of the management cluster of the private cloud. | |
|
||||
| [network_config](outputs.tf#L32) | Details about the network configuration of the private cloud. | |
|
||||
| [nsx](outputs.tf#L37) | Details about a NSX Manager appliance. | |
|
||||
| [private-cloud](outputs.tf#L42) | The private cloud resource. | |
|
||||
| [private_connections_setup](outputs.tf#L47) | Cloud SDK commands for the private connections manual setup. | |
|
||||
| [state](outputs.tf#L63) | Details about the state of the private cloud. | |
|
||||
| [vcenter](outputs.tf#L68) | Details about a vCenter Server management appliance. | |
|
||||
| [vmw_engine_network_config](outputs.tf#L17) | VMware engine network configuration. | |
|
||||
| [vmw_engine_network_peerings](outputs.tf#L22) | The peerings created towards the user VPC or other VMware engine networks. | |
|
||||
| [vmw_engine_private_clouds](outputs.tf#L27) | VMware engine private cloud resources. | |
|
||||
<!-- END TFDOC -->
|
||||
|
||||
@@ -15,61 +15,87 @@
|
||||
*/
|
||||
|
||||
locals {
|
||||
region = regex("([a-z]*-[a-z]*[0-9]{1,2})-([a-z])", var.zone)[0]
|
||||
# Creates a map of additional clusters objects, including their parent private cloud
|
||||
additional_cluster_configs = merge(
|
||||
[for pcc_name, pcc in var.vmw_private_cloud_configs
|
||||
: { for cluster_name, cluster in pcc.additional_cluster_configs
|
||||
: "${cluster_name}" => merge(
|
||||
cluster,
|
||||
{ parent = try(google_vmwareengine_private_cloud.vmw_engine_private_clouds[pcc_name].id, null) }
|
||||
)
|
||||
}
|
||||
]...)
|
||||
vmw_network = (
|
||||
var.vmw_network_create
|
||||
? try(google_vmwareengine_network.private-cloud-network.0, null)
|
||||
: try(data.google_vmwareengine_network.private-cloud-network.0, null)
|
||||
var.vmw_network_config.create
|
||||
? try(google_vmwareengine_network.private_cloud_network.0, null)
|
||||
: try(data.google_vmwareengine_network.private_cloud_network.0, null)
|
||||
)
|
||||
tenant_host_project = {
|
||||
for k, v in var.private_connections : k => v.tenant_host_project == null
|
||||
? regex("(.*)/projects/([a-z0-9-]*)/(.*)", "${data.google_compute_network_peering.psa_peering[k].peer_network}")[1]
|
||||
: v.tenant_host_project
|
||||
}
|
||||
}
|
||||
|
||||
data "google_vmwareengine_network" "private-cloud-network" {
|
||||
count = var.vmw_network_create ? 0 : 1
|
||||
provider = google-beta
|
||||
project = var.project_id
|
||||
name = "${local.region}-default"
|
||||
location = local.region
|
||||
}
|
||||
|
||||
data "google_compute_network_peering" "psa_peering" {
|
||||
for_each = { for k, v in var.private_connections : k => v if v.tenant_host_project == null }
|
||||
name = each.value.peering_name
|
||||
network = each.value.network_self_link
|
||||
}
|
||||
|
||||
resource "google_vmwareengine_private_cloud" "private-cloud" {
|
||||
resource "google_vmwareengine_network" "private_cloud_network" {
|
||||
provider = google-beta
|
||||
count = var.vmw_network_config.create ? 1 : 0
|
||||
project = var.project_id
|
||||
location = var.zone
|
||||
name = var.name
|
||||
description = var.description
|
||||
name = "${var.prefix}-${var.vmw_network_config.name}"
|
||||
description = var.vmw_network_config.description
|
||||
location = "global"
|
||||
type = "STANDARD"
|
||||
}
|
||||
|
||||
data "google_vmwareengine_network" "private_cloud_network" {
|
||||
provider = google-beta
|
||||
count = var.vmw_network_config.create ? 0 : 1
|
||||
project = var.project_id
|
||||
name = "${var.prefix}-${var.vmw_network_config.name}"
|
||||
location = "global"
|
||||
}
|
||||
|
||||
resource "google_vmwareengine_network_peering" "vmw_engine_network_peerings" {
|
||||
provider = google-beta
|
||||
for_each = var.vmw_network_peerings
|
||||
project = var.project_id
|
||||
name = "${var.prefix}-${each.key}"
|
||||
description = each.value.description
|
||||
export_custom_routes = each.value.export_custom_routes
|
||||
export_custom_routes_with_public_ip = each.value.export_custom_routes_with_public_ip
|
||||
import_custom_routes = each.value.import_custom_routes
|
||||
import_custom_routes_with_public_ip = each.value.import_custom_routes_with_public_ip
|
||||
peer_network = each.value.peer_network
|
||||
peer_network_type = each.value.peer_to_vmware_engine_network ? "VMWARE_ENGINE_NETWORK" : "STANDARD"
|
||||
vmware_engine_network = local.vmw_network.id
|
||||
}
|
||||
|
||||
resource "google_vmwareengine_private_cloud" "vmw_engine_private_clouds" {
|
||||
provider = google-beta
|
||||
for_each = var.vmw_private_cloud_configs
|
||||
project = var.project_id
|
||||
location = each.value.zone
|
||||
name = "${var.prefix}-${each.key}"
|
||||
description = each.value.description
|
||||
|
||||
network_config {
|
||||
management_cidr = var.cidr
|
||||
management_cidr = each.value.cidr
|
||||
vmware_engine_network = local.vmw_network.id
|
||||
}
|
||||
|
||||
management_cluster {
|
||||
cluster_id = "${var.name}-mgmt-cluster"
|
||||
cluster_id = "${var.prefix}-${each.key}-${each.value.management_cluster_config.name}"
|
||||
node_type_configs {
|
||||
node_type_id = var.management_cluster_config.node_type_id
|
||||
node_count = var.management_cluster_config.node_count
|
||||
custom_core_count = var.management_cluster_config.custom_core_count
|
||||
node_type_id = each.value.management_cluster_config.node_type_id
|
||||
node_count = each.value.management_cluster_config.node_count
|
||||
custom_core_count = each.value.management_cluster_config.custom_core_count
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
resource "google_vmwareengine_network" "private-cloud-network" {
|
||||
count = var.vmw_network_create ? 1 : 0
|
||||
provider = google-beta
|
||||
project = var.project_id
|
||||
name = "${local.region}-default"
|
||||
location = local.region
|
||||
type = "LEGACY"
|
||||
description = var.vmw_network_description
|
||||
resource "google_vmwareengine_cluster" "vmw_engine_additional_clusters" {
|
||||
provider = google-beta
|
||||
for_each = local.additional_cluster_configs
|
||||
name = "${var.prefix}-${each.key}"
|
||||
parent = each.value.parent
|
||||
node_type_configs {
|
||||
custom_core_count = each.value.custom_core_count
|
||||
node_count = each.value.node_count
|
||||
node_type_id = each.value.node_type_id
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,58 +14,17 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
output "hcx" {
|
||||
description = "Details about a HCX Cloud Manager appliance."
|
||||
value = google_vmwareengine_private_cloud.private-cloud.hcx
|
||||
output "vmw_engine_network_config" {
|
||||
description = "VMware engine network configuration."
|
||||
value = local.vmw_network
|
||||
}
|
||||
|
||||
output "id" {
|
||||
description = "ID of the private cloud."
|
||||
value = google_vmwareengine_private_cloud.private-cloud.id
|
||||
output "vmw_engine_network_peerings" {
|
||||
description = "The peerings created towards the user VPC or other VMware engine networks."
|
||||
value = google_vmwareengine_network_peering.vmw_engine_network_peerings
|
||||
}
|
||||
|
||||
output "management_cluster" {
|
||||
description = "Details of the management cluster of the private cloud."
|
||||
value = google_vmwareengine_private_cloud.private-cloud.management_cluster
|
||||
}
|
||||
|
||||
output "network_config" {
|
||||
description = "Details about the network configuration of the private cloud."
|
||||
value = google_vmwareengine_private_cloud.private-cloud.network_config
|
||||
}
|
||||
|
||||
output "nsx" {
|
||||
description = "Details about a NSX Manager appliance."
|
||||
value = google_vmwareengine_private_cloud.private-cloud.nsx
|
||||
}
|
||||
|
||||
output "private-cloud" {
|
||||
description = "The private cloud resource."
|
||||
value = google_vmwareengine_private_cloud.private-cloud
|
||||
}
|
||||
|
||||
output "private_connections_setup" {
|
||||
description = "Cloud SDK commands for the private connections manual setup."
|
||||
value = {
|
||||
for k, v in var.private_connections : k => <<EOT
|
||||
gcloud vmware private-connections create ${v.name} \
|
||||
--location=${local.region} \
|
||||
--project=${var.project_id} \
|
||||
--vmware-engine-network=${local.region}-default \
|
||||
--description="${v.description}" \
|
||||
--routing-mode=${v.routing_mode} \
|
||||
--service-project=${local.tenant_host_project[k]} \
|
||||
--type=${v.type}
|
||||
EOT
|
||||
}
|
||||
}
|
||||
|
||||
output "state" {
|
||||
description = "Details about the state of the private cloud."
|
||||
value = google_vmwareengine_private_cloud.private-cloud.state
|
||||
}
|
||||
|
||||
output "vcenter" {
|
||||
description = "Details about a vCenter Server management appliance."
|
||||
value = google_vmwareengine_private_cloud.private-cloud.vcenter
|
||||
output "vmw_engine_private_clouds" {
|
||||
description = "VMware engine private cloud resources."
|
||||
value = google_vmwareengine_private_cloud.vmw_engine_private_clouds
|
||||
}
|
||||
|
||||
@@ -13,96 +13,76 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
variable "cidr" {
|
||||
description = "vSphere/vSAN subnets CIDR range. To undersatnd the limits, please refer to [GCVE network requirements](https://cloud.google.com/vmware-engine/docs/quickstart-networking-requirements)."
|
||||
|
||||
variable "prefix" {
|
||||
description = "Resources name prefix."
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "description" {
|
||||
description = "Private cloud description."
|
||||
type = string
|
||||
default = "Terraform-managed."
|
||||
}
|
||||
|
||||
variable "management_cluster_config" {
|
||||
description = "Management cluster configuration."
|
||||
type = object({
|
||||
node_type_id = string
|
||||
node_count = number,
|
||||
custom_core_count = number
|
||||
})
|
||||
default = {
|
||||
node_type_id = "standard-72",
|
||||
node_count = 3,
|
||||
custom_core_count = null
|
||||
}
|
||||
nullable = false
|
||||
}
|
||||
|
||||
variable "name" {
|
||||
description = "Private cloud name."
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "private_connections" {
|
||||
description = "VMWare private connections configuration. It is used to create the gcloud command printed as output."
|
||||
type = map(object({
|
||||
name = string
|
||||
network_self_link = string
|
||||
peering_name = optional(string)
|
||||
tenant_host_project = optional(string)
|
||||
description = optional(string, "Terraform-managed.")
|
||||
type = optional(string, "PRIVATE_SERVICE_ACCESS")
|
||||
routing_mode = optional(string, "REGIONAL")
|
||||
}))
|
||||
default = {}
|
||||
nullable = false
|
||||
validation {
|
||||
condition = alltrue([
|
||||
for k, v in var.private_connections :
|
||||
(v.peering_name != null) != (v.tenant_host_project != null)
|
||||
]
|
||||
)
|
||||
error_message = "Both peering_name and tenant_host_project variables have been set. Only one variable is allowed."
|
||||
}
|
||||
validation {
|
||||
condition = alltrue([
|
||||
for r in var.private_connections :
|
||||
contains(["GLOBAL", "REGIONAL"], r.routing_mode)
|
||||
])
|
||||
error_message = "Routing mode must be one of GLOBAL, REGIONAL."
|
||||
}
|
||||
validation {
|
||||
condition = alltrue([
|
||||
for r in var.private_connections :
|
||||
contains(["DELL_POWERSCALE", "NETAPP_CLOUD_VOLUMES", "PRIVATE_SERVICE_ACCESS", "THIRD_PARTY_SERVICE"], r.type)
|
||||
])
|
||||
error_message = "Type must be one of DELL_POWERSCALE, NETAPP_CLOUD_VOLUMES, PRIVATE_SERVICE_ACCESS, THIRD_PARTY_SERVICE."
|
||||
}
|
||||
}
|
||||
|
||||
variable "project_id" {
|
||||
description = "Project id."
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "vmw_network_create" {
|
||||
description = "Create the VMware Engine network. When set to false, it uses a data source to reference an existing VMware Engine network."
|
||||
type = bool
|
||||
default = true
|
||||
variable "vmw_network_config" {
|
||||
description = "VMware Engine network configuration."
|
||||
type = object({
|
||||
create = optional(bool, true)
|
||||
description = optional(string, "Terraform-managed.")
|
||||
name = optional(string, "default")
|
||||
})
|
||||
default = {}
|
||||
}
|
||||
|
||||
variable "vmw_network_description" {
|
||||
description = " VMware Engine network description."
|
||||
type = string
|
||||
default = "Terraform-managed."
|
||||
variable "vmw_network_peerings" {
|
||||
description = "The network peerings towards users' VPCs or other VMware Engine networks. The key is the peering name suffix."
|
||||
type = map(object({
|
||||
peer_network = string
|
||||
description = optional(string, "Managed by Terraform.")
|
||||
export_custom_routes = optional(bool, false)
|
||||
export_custom_routes_with_public_ip = optional(bool, false)
|
||||
import_custom_routes = optional(bool, false)
|
||||
import_custom_routes_with_public_ip = optional(bool, false)
|
||||
peer_to_vmware_engine_network = optional(bool, false)
|
||||
}))
|
||||
default = {}
|
||||
}
|
||||
|
||||
variable "zone" {
|
||||
description = "Private cloud zone."
|
||||
type = string
|
||||
variable "vmw_private_cloud_configs" {
|
||||
description = "The VMware private cloud configurations. The key is the unique private cloud name suffix."
|
||||
type = map(object({
|
||||
cidr = string
|
||||
zone = string
|
||||
# The key is the unique additional cluster name suffix
|
||||
additional_cluster_configs = optional(map(object({
|
||||
custom_core_count = optional(number)
|
||||
node_count = optional(number, 3)
|
||||
node_type_id = optional(string, "standard-72")
|
||||
})), {})
|
||||
management_cluster_config = optional(object({
|
||||
custom_core_count = optional(number)
|
||||
name = optional(string, "mgmt-cluster")
|
||||
node_count = optional(number, 3)
|
||||
node_type_id = optional(string, "standard-72")
|
||||
}), {})
|
||||
description = optional(string, "Managed by Terraform.")
|
||||
}))
|
||||
default = {
|
||||
pcc_one = {
|
||||
cidr = "192.168.0.0/24"
|
||||
additional_cluster_configs = {
|
||||
test-cluster-one = {
|
||||
node_type_id = "standard-72"
|
||||
node_count = 6
|
||||
custom_core_count = 28
|
||||
}
|
||||
test-cluster-two = {
|
||||
node_type_id = "standard-72"
|
||||
node_count = 4
|
||||
custom_core_count = 28
|
||||
}
|
||||
}
|
||||
zone = "europe-west8-a"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +17,11 @@ terraform {
|
||||
required_providers {
|
||||
google = {
|
||||
source = "hashicorp/google"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
google-beta = {
|
||||
source = "hashicorp/google-beta"
|
||||
version = ">= 5.6.0, < 6.0.0" # tftest
|
||||
version = ">= 5.10.0, < 6.0.0" # tftest
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user