From 789328ff5a1f71892a90d2174bc327aeaff08d31 Mon Sep 17 00:00:00 2001 From: Ludovico Magnocavallo Date: Tue, 3 Oct 2023 14:15:36 +0200 Subject: [PATCH] Bump provider versions to v5.0.0 (#1724) * bump provider versions to 5.0.0 * fix cloud run, logging and vpc-sc * Fix secret manager * fix gke nodepool * fix gke multitenant stage and blueprint * Moving alloydb module to experimental. * Add project to bare resources in examples * tfdoc * fix svpc blueprint test * Revert "fix svpc blueprint test" This reverts commit 14f02659098070136e64ead600580dd52c23c339. * Fix GKE peering project * Disable tests in alloydb module * Bring back secret ids in secret manager tests * Remove duplicate key * last push --------- Co-authored-by: Julio Castillo --- README.md | 2 +- blueprints/apigee/bigquery-analytics/versions.tf | 4 ++-- .../versions.tf | 4 ++-- blueprints/cloud-operations/adfs/versions.tf | 4 ++-- .../asset-inventory-feed-remediation/versions.tf | 4 ++-- .../dns-fine-grained-iam/versions.tf | 4 ++-- .../cloud-operations/dns-shared-vpc/versions.tf | 4 ++-- .../iam-delegated-role-grants/versions.tf | 4 ++-- .../onprem-sa-key-management/versions.tf | 4 ++-- .../packer-image-builder/versions.tf | 4 ++-- .../cloud-operations/quota-monitoring/versions.tf | 4 ++-- .../scheduled-asset-inventory-export-bq/versions.tf | 4 ++-- blueprints/data-solutions/bq-ml/versions.tf | 4 ++-- .../cmek-via-centralized-kms/versions.tf | 4 ++-- .../data-solutions/data-playground/versions.tf | 4 ++-- .../gcs-to-bq-with-least-privileges/versions.tf | 4 ++-- .../factories/net-vpc-firewall-yaml/versions.tf | 4 ++-- blueprints/gke/multitenant-fleet/README.md | 10 +++++----- blueprints/gke/multitenant-fleet/variables.tf | 3 +-- .../nginx-reverse-proxy-cluster/versions.tf | 4 ++-- .../onprem-google-access-dns/versions.tf | 4 ++-- .../networking/decentralized-firewall/versions.tf | 4 ++-- .../networking/filtering-proxy-psc/versions.tf | 4 ++-- blueprints/networking/filtering-proxy/versions.tf | 4 ++-- .../networking/hub-and-spoke-peering/versions.tf | 4 ++-- blueprints/networking/hub-and-spoke-vpn/versions.tf | 4 ++-- blueprints/networking/ilb-next-hop/versions.tf | 4 ++-- .../private-cloud-function-from-onprem/versions.tf | 4 ++-- blueprints/networking/shared-vpc-gke/versions.tf | 4 ++-- .../third-party-solutions/openshift/tf/versions.tf | 4 ++-- default-versions.tf | 4 ++-- fast/stages/3-gke-multitenant/dev/README.md | 10 +++++----- fast/stages/3-gke-multitenant/dev/variables.tf | 3 +-- modules/README.md | 2 +- .../{ => __experimental}/alloydb-instance/README.md | 3 ++- .../{ => __experimental}/alloydb-instance/main.tf | 0 .../alloydb-instance/outputs.tf | 0 .../alloydb-instance/variables.tf | 0 .../alloydb-instance/versions.tf | 4 ++-- modules/__experimental/net-neg/versions.tf | 4 ++-- modules/api-gateway/versions.tf | 4 ++-- modules/apigee/versions.tf | 4 ++-- modules/artifact-registry/versions.tf | 4 ++-- modules/bigquery-dataset/README.md | 1 + modules/bigquery-dataset/versions.tf | 4 ++-- modules/bigtable-instance/versions.tf | 4 ++-- modules/billing-budget/versions.tf | 4 ++-- modules/binauthz/versions.tf | 4 ++-- .../__need_fixing/onprem/versions.tf | 4 ++-- modules/cloud-config-container/coredns/versions.tf | 4 ++-- .../cos-generic-metadata/versions.tf | 4 ++-- .../envoy-traffic-director/versions.tf | 4 ++-- modules/cloud-config-container/mysql/versions.tf | 4 ++-- .../cloud-config-container/nginx-tls/versions.tf | 4 ++-- modules/cloud-config-container/nginx/versions.tf | 4 ++-- .../cloud-config-container/simple-nva/versions.tf | 4 ++-- modules/cloud-config-container/squid/versions.tf | 4 ++-- modules/cloud-function-v1/versions.tf | 4 ++-- modules/cloud-function-v2/versions.tf | 4 ++-- modules/cloud-identity-group/versions.tf | 4 ++-- modules/cloud-run/versions.tf | 4 ++-- modules/cloudsql-instance/versions.tf | 4 ++-- modules/compute-mig/versions.tf | 4 ++-- modules/compute-vm/versions.tf | 4 ++-- modules/container-registry/versions.tf | 4 ++-- modules/data-catalog-policy-tag/versions.tf | 4 ++-- modules/datafusion/versions.tf | 4 ++-- modules/dataplex-datascan/versions.tf | 4 ++-- modules/dataplex/versions.tf | 4 ++-- modules/dataproc/versions.tf | 4 ++-- modules/dns-response-policy/versions.tf | 4 ++-- modules/dns/versions.tf | 4 ++-- modules/endpoints/versions.tf | 4 ++-- modules/folder/versions.tf | 4 ++-- modules/gcs/versions.tf | 4 ++-- modules/gcve-private-cloud/versions.tf | 4 ++-- modules/gke-cluster-autopilot/main.tf | 6 +----- modules/gke-cluster-autopilot/versions.tf | 4 ++-- modules/gke-cluster-standard/main.tf | 6 +----- modules/gke-cluster-standard/versions.tf | 4 ++-- modules/gke-hub/versions.tf | 4 ++-- modules/gke-nodepool/README.md | 4 +--- modules/gke-nodepool/main.tf | 11 ++++++++--- modules/gke-nodepool/variables.tf | 13 ++++++++++--- modules/gke-nodepool/versions.tf | 4 ++-- modules/iam-service-account/versions.tf | 4 ++-- modules/kms/versions.tf | 4 ++-- modules/logging-bucket/versions.tf | 4 ++-- modules/ncc-spoke-ra/versions.tf | 4 ++-- modules/net-address/versions.tf | 4 ++-- modules/net-cloudnat/versions.tf | 4 ++-- modules/net-firewall-policy/versions.tf | 4 ++-- modules/net-ipsec-over-interconnect/versions.tf | 4 ++-- modules/net-lb-app-ext/versions.tf | 4 ++-- modules/net-lb-app-int/README.md | 1 + modules/net-lb-app-int/versions.tf | 4 ++-- modules/net-lb-ext/versions.tf | 4 ++-- modules/net-lb-int/versions.tf | 4 ++-- modules/net-lb-proxy-int/README.md | 1 + modules/net-lb-proxy-int/versions.tf | 4 ++-- modules/net-swp/versions.tf | 4 ++-- modules/net-vlan-attachment/versions.tf | 4 ++-- modules/net-vpc-firewall/versions.tf | 4 ++-- modules/net-vpc-peering/versions.tf | 4 ++-- modules/net-vpc/versions.tf | 4 ++-- modules/net-vpn-dynamic/versions.tf | 4 ++-- modules/net-vpn-ha/versions.tf | 4 ++-- modules/net-vpn-static/versions.tf | 4 ++-- modules/organization/versions.tf | 4 ++-- modules/project/README.md | 2 +- modules/project/variables.tf | 2 +- modules/project/versions.tf | 4 ++-- modules/projects-data-source/versions.tf | 4 ++-- modules/pubsub/versions.tf | 4 ++-- modules/secret-manager/main.tf | 5 +++-- modules/secret-manager/versions.tf | 4 ++-- modules/service-directory/versions.tf | 4 ++-- modules/source-repository/versions.tf | 4 ++-- modules/vpc-sc/versions.tf | 4 ++-- tests/modules/cloud_function_v2/examples/iam.yaml | 10 ---------- .../examples/trigger-service-account-external.yaml | 1 - .../cloud_run/examples/trigger-service-account.yaml | 2 -- tests/modules/project/examples/logging.yaml | 10 +++++----- tests/modules/secret_manager/examples/iam.yaml | 5 +++-- tests/modules/vpc_sc/examples/bridge.yaml | 2 +- 125 files changed, 250 insertions(+), 257 deletions(-) rename modules/{ => __experimental}/alloydb-instance/README.md (99%) rename modules/{ => __experimental}/alloydb-instance/main.tf (100%) rename modules/{ => __experimental}/alloydb-instance/outputs.tf (100%) rename modules/{ => __experimental}/alloydb-instance/variables.tf (100%) rename modules/{ => __experimental}/alloydb-instance/versions.tf (91%) diff --git a/README.md b/README.md index 6d67d06b2..84dbdca20 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ Currently available modules: - **foundational** - [billing budget](./modules/billing-budget), [Cloud Identity group](./modules/cloud-identity-group/), [folder](./modules/folder), [service accounts](./modules/iam-service-account), [logging bucket](./modules/logging-bucket), [organization](./modules/organization), [project](./modules/project), [projects-data-source](./modules/projects-data-source) - **networking** - [DNS](./modules/dns), [DNS Response Policy](./modules/dns-response-policy/), [Cloud Endpoints](./modules/endpoints), [address reservation](./modules/net-address), [NAT](./modules/net-cloudnat), [VLAN Attachment](./modules/net-vlan-attachment/), [External Application LB](./modules/net-lb-app-ext/), [External Passthrough Network LB](./modules/net-lb-ext), [Firewall policy](./modules/net-firewall-policy), [Internal Application LB](./modules/net-lb-app-int), [Internal Passthrough Network LB](./modules/net-lb-int), [Internal Proxy Network LB](./modules/net-lb-proxy-int), [IPSec over Interconnect](./modules/net-ipsec-over-interconnect), [VPC](./modules/net-vpc), [VPC firewall](./modules/net-vpc-firewall), [VPC peering](./modules/net-vpc-peering), [VPN dynamic](./modules/net-vpn-dynamic), [HA VPN](./modules/net-vpn-ha), [VPN static](./modules/net-vpn-static), [Service Directory](./modules/service-directory), [Secure Web Proxy](./modules/net-swp) - **compute** - [VM/VM group](./modules/compute-vm), [MIG](./modules/compute-mig), [COS container](./modules/cloud-config-container/cos-generic-metadata/) (coredns, mysql, onprem, squid), [GKE cluster](./modules/gke-cluster-standard), [GKE hub](./modules/gke-hub), [GKE nodepool](./modules/gke-nodepool), [GCVE private cloud](./modules/gcve-private-cloud) -- **data** - [AlloyDB instance](./modules/alloydb-instance), [BigQuery dataset](./modules/bigquery-dataset), [Bigtable instance](./modules/bigtable-instance), [Dataplex](./modules/dataplex), [Dataplex DataScan](./modules/dataplex-datascan/), [Cloud SQL instance](./modules/cloudsql-instance), [Data Catalog Policy Tag](./modules/data-catalog-policy-tag), [Datafusion](./modules/datafusion), [Dataproc](./modules/dataproc), [GCS](./modules/gcs), [Pub/Sub](./modules/pubsub) +- **data** - [BigQuery dataset](./modules/bigquery-dataset), [Bigtable instance](./modules/bigtable-instance), [Dataplex](./modules/dataplex), [Dataplex DataScan](./modules/dataplex-datascan/), [Cloud SQL instance](./modules/cloudsql-instance), [Data Catalog Policy Tag](./modules/data-catalog-policy-tag), [Datafusion](./modules/datafusion), [Dataproc](./modules/dataproc), [GCS](./modules/gcs), [Pub/Sub](./modules/pubsub) - **development** - [API Gateway](./modules/api-gateway), [Apigee](./modules/apigee), [Artifact Registry](./modules/artifact-registry), [Container Registry](./modules/container-registry), [Cloud Source Repository](./modules/source-repository) - **security** - [Binauthz](./modules/binauthz/), [KMS](./modules/kms), [SecretManager](./modules/secret-manager), [VPC Service Control](./modules/vpc-sc) - **serverless** - [Cloud Function v1](./modules/cloud-function-v1), [Cloud Function v2](./modules/cloud-function-v2), [Cloud Run](./modules/cloud-run) diff --git a/blueprints/apigee/bigquery-analytics/versions.tf b/blueprints/apigee/bigquery-analytics/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/apigee/bigquery-analytics/versions.tf +++ b/blueprints/apigee/bigquery-analytics/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/apigee/network-patterns/nb-glb-psc-neg-sb-psc-ilbl7-hybrid-neg/versions.tf b/blueprints/apigee/network-patterns/nb-glb-psc-neg-sb-psc-ilbl7-hybrid-neg/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/apigee/network-patterns/nb-glb-psc-neg-sb-psc-ilbl7-hybrid-neg/versions.tf +++ b/blueprints/apigee/network-patterns/nb-glb-psc-neg-sb-psc-ilbl7-hybrid-neg/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/cloud-operations/adfs/versions.tf b/blueprints/cloud-operations/adfs/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/cloud-operations/adfs/versions.tf +++ b/blueprints/cloud-operations/adfs/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/cloud-operations/asset-inventory-feed-remediation/versions.tf b/blueprints/cloud-operations/asset-inventory-feed-remediation/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/cloud-operations/asset-inventory-feed-remediation/versions.tf +++ b/blueprints/cloud-operations/asset-inventory-feed-remediation/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/cloud-operations/dns-fine-grained-iam/versions.tf b/blueprints/cloud-operations/dns-fine-grained-iam/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/cloud-operations/dns-fine-grained-iam/versions.tf +++ b/blueprints/cloud-operations/dns-fine-grained-iam/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/cloud-operations/dns-shared-vpc/versions.tf b/blueprints/cloud-operations/dns-shared-vpc/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/cloud-operations/dns-shared-vpc/versions.tf +++ b/blueprints/cloud-operations/dns-shared-vpc/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/cloud-operations/iam-delegated-role-grants/versions.tf b/blueprints/cloud-operations/iam-delegated-role-grants/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/cloud-operations/iam-delegated-role-grants/versions.tf +++ b/blueprints/cloud-operations/iam-delegated-role-grants/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/cloud-operations/onprem-sa-key-management/versions.tf b/blueprints/cloud-operations/onprem-sa-key-management/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/cloud-operations/onprem-sa-key-management/versions.tf +++ b/blueprints/cloud-operations/onprem-sa-key-management/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/cloud-operations/packer-image-builder/versions.tf b/blueprints/cloud-operations/packer-image-builder/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/cloud-operations/packer-image-builder/versions.tf +++ b/blueprints/cloud-operations/packer-image-builder/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/cloud-operations/quota-monitoring/versions.tf b/blueprints/cloud-operations/quota-monitoring/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/cloud-operations/quota-monitoring/versions.tf +++ b/blueprints/cloud-operations/quota-monitoring/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/cloud-operations/scheduled-asset-inventory-export-bq/versions.tf b/blueprints/cloud-operations/scheduled-asset-inventory-export-bq/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/cloud-operations/scheduled-asset-inventory-export-bq/versions.tf +++ b/blueprints/cloud-operations/scheduled-asset-inventory-export-bq/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/data-solutions/bq-ml/versions.tf b/blueprints/data-solutions/bq-ml/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/data-solutions/bq-ml/versions.tf +++ b/blueprints/data-solutions/bq-ml/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/data-solutions/cmek-via-centralized-kms/versions.tf b/blueprints/data-solutions/cmek-via-centralized-kms/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/data-solutions/cmek-via-centralized-kms/versions.tf +++ b/blueprints/data-solutions/cmek-via-centralized-kms/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/data-solutions/data-playground/versions.tf b/blueprints/data-solutions/data-playground/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/data-solutions/data-playground/versions.tf +++ b/blueprints/data-solutions/data-playground/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/data-solutions/gcs-to-bq-with-least-privileges/versions.tf b/blueprints/data-solutions/gcs-to-bq-with-least-privileges/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/data-solutions/gcs-to-bq-with-least-privileges/versions.tf +++ b/blueprints/data-solutions/gcs-to-bq-with-least-privileges/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/factories/net-vpc-firewall-yaml/versions.tf b/blueprints/factories/net-vpc-firewall-yaml/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/factories/net-vpc-firewall-yaml/versions.tf +++ b/blueprints/factories/net-vpc-firewall-yaml/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/gke/multitenant-fleet/README.md b/blueprints/gke/multitenant-fleet/README.md index ed89a878b..0763c6231 100644 --- a/blueprints/gke/multitenant-fleet/README.md +++ b/blueprints/gke/multitenant-fleet/README.md @@ -246,9 +246,9 @@ module "gke" { |---|---|:---:|:---:|:---:| | [billing_account_id](variables.tf#L17) | Billing account ID. | string | ✓ | | | [folder_id](variables.tf#L154) | Folder used for the GKE project in folders/nnnnnnnnnnn format. | string | ✓ | | -| [prefix](variables.tf#L205) | Prefix used for resource names. | string | ✓ | | -| [project_id](variables.tf#L214) | ID of the project that will contain all the clusters. | string | ✓ | | -| [vpc_config](variables.tf#L226) | Shared VPC project and VPC details. | object({…}) | ✓ | | +| [prefix](variables.tf#L204) | Prefix used for resource names. | string | ✓ | | +| [project_id](variables.tf#L213) | ID of the project that will contain all the clusters. | string | ✓ | | +| [vpc_config](variables.tf#L225) | Shared VPC project and VPC details. | object({…}) | ✓ | | | [clusters](variables.tf#L22) | Clusters configuration. Refer to the gke-cluster module for type details. | map(object({…})) | | {} | | [fleet_configmanagement_clusters](variables.tf#L92) | Config management features enabled on specific sets of member clusters, in config name => [cluster name] format. | map(list(string)) | | {} | | [fleet_configmanagement_templates](variables.tf#L99) | Sets of config management configurations that can be applied to member clusters, in config name => {options} format. | map(object({…})) | | {} | @@ -257,8 +257,8 @@ module "gke" { | [group_iam](variables.tf#L159) | Project-level IAM bindings for groups. Use group emails as keys, list of roles as values. | map(list(string)) | | {} | | [iam](variables.tf#L166) | Project-level authoritative IAM bindings for users and service accounts in {ROLE => [MEMBERS]} format. | map(list(string)) | | {} | | [labels](variables.tf#L173) | Project-level labels. | map(string) | | {} | -| [nodepools](variables.tf#L179) | Nodepools configuration. Refer to the gke-nodepool module for type details. | map(map(object({…}))) | | {} | -| [project_services](variables.tf#L219) | Additional project services to enable. | list(string) | | [] | +| [nodepools](variables.tf#L179) | Nodepools configuration. Refer to the gke-nodepool module for type details. | map(map(object({…}))) | | {} | +| [project_services](variables.tf#L218) | Additional project services to enable. | list(string) | | [] | ## Outputs diff --git a/blueprints/gke/multitenant-fleet/variables.tf b/blueprints/gke/multitenant-fleet/variables.tf index 5d34440f9..7117d4565 100644 --- a/blueprints/gke/multitenant-fleet/variables.tf +++ b/blueprints/gke/multitenant-fleet/variables.tf @@ -192,8 +192,7 @@ variable "nodepools" { service_account = optional(any) sole_tenant_nodegroup = optional(string) tags = optional(list(string)) - taints = optional(list(object({ - key = string + taints = optional(map(object({ value = string effect = string }))) diff --git a/blueprints/networking/__need_fixing/nginx-reverse-proxy-cluster/versions.tf b/blueprints/networking/__need_fixing/nginx-reverse-proxy-cluster/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/networking/__need_fixing/nginx-reverse-proxy-cluster/versions.tf +++ b/blueprints/networking/__need_fixing/nginx-reverse-proxy-cluster/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/networking/__need_fixing/onprem-google-access-dns/versions.tf b/blueprints/networking/__need_fixing/onprem-google-access-dns/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/networking/__need_fixing/onprem-google-access-dns/versions.tf +++ b/blueprints/networking/__need_fixing/onprem-google-access-dns/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/networking/decentralized-firewall/versions.tf b/blueprints/networking/decentralized-firewall/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/networking/decentralized-firewall/versions.tf +++ b/blueprints/networking/decentralized-firewall/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/networking/filtering-proxy-psc/versions.tf b/blueprints/networking/filtering-proxy-psc/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/networking/filtering-proxy-psc/versions.tf +++ b/blueprints/networking/filtering-proxy-psc/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/networking/filtering-proxy/versions.tf b/blueprints/networking/filtering-proxy/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/networking/filtering-proxy/versions.tf +++ b/blueprints/networking/filtering-proxy/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/networking/hub-and-spoke-peering/versions.tf b/blueprints/networking/hub-and-spoke-peering/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/networking/hub-and-spoke-peering/versions.tf +++ b/blueprints/networking/hub-and-spoke-peering/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/networking/hub-and-spoke-vpn/versions.tf b/blueprints/networking/hub-and-spoke-vpn/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/networking/hub-and-spoke-vpn/versions.tf +++ b/blueprints/networking/hub-and-spoke-vpn/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/networking/ilb-next-hop/versions.tf b/blueprints/networking/ilb-next-hop/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/networking/ilb-next-hop/versions.tf +++ b/blueprints/networking/ilb-next-hop/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/networking/private-cloud-function-from-onprem/versions.tf b/blueprints/networking/private-cloud-function-from-onprem/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/networking/private-cloud-function-from-onprem/versions.tf +++ b/blueprints/networking/private-cloud-function-from-onprem/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/networking/shared-vpc-gke/versions.tf b/blueprints/networking/shared-vpc-gke/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/networking/shared-vpc-gke/versions.tf +++ b/blueprints/networking/shared-vpc-gke/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/blueprints/third-party-solutions/openshift/tf/versions.tf b/blueprints/third-party-solutions/openshift/tf/versions.tf index 91a91a314..3963660f0 100644 --- a/blueprints/third-party-solutions/openshift/tf/versions.tf +++ b/blueprints/third-party-solutions/openshift/tf/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/default-versions.tf b/default-versions.tf index 91a91a314..3963660f0 100644 --- a/default-versions.tf +++ b/default-versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/fast/stages/3-gke-multitenant/dev/README.md b/fast/stages/3-gke-multitenant/dev/README.md index db125648b..9b231c59c 100644 --- a/fast/stages/3-gke-multitenant/dev/README.md +++ b/fast/stages/3-gke-multitenant/dev/README.md @@ -165,8 +165,8 @@ Leave all these variables unset (or set to `null`) to disable fleet management. | [billing_account](variables.tf#L29) | Billing account id. If billing account is not part of the same org set `is_org_level` to false. | object({…}) | ✓ | | 0-bootstrap | | [folder_ids](variables.tf#L174) | Folders to be used for the networking resources in folders/nnnnnnnnnnn format. If null, folder will be created. | object({…}) | ✓ | | 1-resman | | [host_project_ids](variables.tf#L189) | Host project for the shared VPC. | object({…}) | ✓ | | 2-networking | -| [prefix](variables.tf#L242) | Prefix used for resources that need unique names. | string | ✓ | | | -| [vpc_self_links](variables.tf#L258) | Self link for the shared VPC. | object({…}) | ✓ | | 2-networking | +| [prefix](variables.tf#L241) | Prefix used for resources that need unique names. | string | ✓ | | | +| [vpc_self_links](variables.tf#L257) | Self link for the shared VPC. | object({…}) | ✓ | | 2-networking | | [clusters](variables.tf#L42) | Clusters configuration. Refer to the gke-cluster-standard module for type details. | map(object({…})) | | {} | | | [fleet_configmanagement_clusters](variables.tf#L111) | Config management features enabled on specific sets of member clusters, in config name => [cluster name] format. | map(list(string)) | | {} | | | [fleet_configmanagement_templates](variables.tf#L119) | Sets of config management configurations that can be applied to member clusters, in config name => {options} format. | map(object({…})) | | {} | | @@ -175,9 +175,9 @@ Leave all these variables unset (or set to `null`) to disable fleet management. | [group_iam](variables.tf#L182) | Project-level authoritative IAM bindings for groups in {GROUP_EMAIL => [ROLES]} format. Use group emails as keys, list of roles as values. | map(list(string)) | | {} | | | [iam](variables.tf#L197) | Project-level authoritative IAM bindings for users and service accounts in {ROLE => [MEMBERS]} format. | map(list(string)) | | {} | | | [labels](variables.tf#L204) | Project-level labels. | map(string) | | {} | | -| [nodepools](variables.tf#L210) | Nodepools configuration. Refer to the gke-nodepool module for type details. | map(map(object({…}))) | | {} | | -| [outputs_location](variables.tf#L236) | Path where providers, tfvars files, and lists for the following stages are written. Leave empty to disable. | string | | null | | -| [project_services](variables.tf#L251) | Additional project services to enable. | list(string) | | [] | | +| [nodepools](variables.tf#L210) | Nodepools configuration. Refer to the gke-nodepool module for type details. | map(map(object({…}))) | | {} | | +| [outputs_location](variables.tf#L235) | Path where providers, tfvars files, and lists for the following stages are written. Leave empty to disable. | string | | null | | +| [project_services](variables.tf#L250) | Additional project services to enable. | list(string) | | [] | | ## Outputs diff --git a/fast/stages/3-gke-multitenant/dev/variables.tf b/fast/stages/3-gke-multitenant/dev/variables.tf index 831f828b3..50dff44a6 100644 --- a/fast/stages/3-gke-multitenant/dev/variables.tf +++ b/fast/stages/3-gke-multitenant/dev/variables.tf @@ -223,8 +223,7 @@ variable "nodepools" { service_account = optional(any) sole_tenant_nodegroup = optional(string) tags = optional(list(string)) - taints = optional(list(object({ - key = string + taints = optional(map(object({ value = string effect = string }))) diff --git a/modules/README.md b/modules/README.md index 82ae57805..44df93beb 100644 --- a/modules/README.md +++ b/modules/README.md @@ -74,7 +74,7 @@ These modules are used in the examples included in this repository. If you are u ## Data -- [AlloyDB instance](./alloydb-instance) + - [BigQuery dataset](./bigquery-dataset) - [Bigtable instance](./bigtable-instance) - [Dataplex](./dataplex) diff --git a/modules/alloydb-instance/README.md b/modules/__experimental/alloydb-instance/README.md similarity index 99% rename from modules/alloydb-instance/README.md rename to modules/__experimental/alloydb-instance/README.md index 1e2413115..ff576f39f 100644 --- a/modules/alloydb-instance/README.md +++ b/modules/__experimental/alloydb-instance/README.md @@ -51,7 +51,7 @@ module "alloydb" { } -# tftest modules=1 resources=7 +# tftest skip ``` ## TODO - [ ] Add IAM support @@ -86,3 +86,4 @@ module "alloydb" { | [read_pool_instance_ids](outputs.tf#L38) | IDs of the read instances created. | | + diff --git a/modules/alloydb-instance/main.tf b/modules/__experimental/alloydb-instance/main.tf similarity index 100% rename from modules/alloydb-instance/main.tf rename to modules/__experimental/alloydb-instance/main.tf diff --git a/modules/alloydb-instance/outputs.tf b/modules/__experimental/alloydb-instance/outputs.tf similarity index 100% rename from modules/alloydb-instance/outputs.tf rename to modules/__experimental/alloydb-instance/outputs.tf diff --git a/modules/alloydb-instance/variables.tf b/modules/__experimental/alloydb-instance/variables.tf similarity index 100% rename from modules/alloydb-instance/variables.tf rename to modules/__experimental/alloydb-instance/variables.tf diff --git a/modules/alloydb-instance/versions.tf b/modules/__experimental/alloydb-instance/versions.tf similarity index 91% rename from modules/alloydb-instance/versions.tf rename to modules/__experimental/alloydb-instance/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/alloydb-instance/versions.tf +++ b/modules/__experimental/alloydb-instance/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/__experimental/net-neg/versions.tf b/modules/__experimental/net-neg/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/__experimental/net-neg/versions.tf +++ b/modules/__experimental/net-neg/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/api-gateway/versions.tf b/modules/api-gateway/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/api-gateway/versions.tf +++ b/modules/api-gateway/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/apigee/versions.tf b/modules/apigee/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/apigee/versions.tf +++ b/modules/apigee/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/artifact-registry/versions.tf b/modules/artifact-registry/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/artifact-registry/versions.tf +++ b/modules/artifact-registry/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/bigquery-dataset/README.md b/modules/bigquery-dataset/README.md index 0071d9fa3..944dee998 100644 --- a/modules/bigquery-dataset/README.md +++ b/modules/bigquery-dataset/README.md @@ -117,6 +117,7 @@ module "bigquery-authorized-authorized-routine-dataset-public" { } resource "google_bigquery_routine" "public-routine" { + project = "private_project" dataset_id = module.bigquery-authorized-authorized-routine-dataset-public.dataset_id routine_id = "auth_routine" routine_type = "TABLE_VALUED_FUNCTION" diff --git a/modules/bigquery-dataset/versions.tf b/modules/bigquery-dataset/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/bigquery-dataset/versions.tf +++ b/modules/bigquery-dataset/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/bigtable-instance/versions.tf b/modules/bigtable-instance/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/bigtable-instance/versions.tf +++ b/modules/bigtable-instance/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/billing-budget/versions.tf b/modules/billing-budget/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/billing-budget/versions.tf +++ b/modules/billing-budget/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/binauthz/versions.tf b/modules/binauthz/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/binauthz/versions.tf +++ b/modules/binauthz/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-config-container/__need_fixing/onprem/versions.tf b/modules/cloud-config-container/__need_fixing/onprem/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-config-container/__need_fixing/onprem/versions.tf +++ b/modules/cloud-config-container/__need_fixing/onprem/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-config-container/coredns/versions.tf b/modules/cloud-config-container/coredns/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-config-container/coredns/versions.tf +++ b/modules/cloud-config-container/coredns/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-config-container/cos-generic-metadata/versions.tf b/modules/cloud-config-container/cos-generic-metadata/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-config-container/cos-generic-metadata/versions.tf +++ b/modules/cloud-config-container/cos-generic-metadata/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-config-container/envoy-traffic-director/versions.tf b/modules/cloud-config-container/envoy-traffic-director/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-config-container/envoy-traffic-director/versions.tf +++ b/modules/cloud-config-container/envoy-traffic-director/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-config-container/mysql/versions.tf b/modules/cloud-config-container/mysql/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-config-container/mysql/versions.tf +++ b/modules/cloud-config-container/mysql/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-config-container/nginx-tls/versions.tf b/modules/cloud-config-container/nginx-tls/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-config-container/nginx-tls/versions.tf +++ b/modules/cloud-config-container/nginx-tls/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-config-container/nginx/versions.tf b/modules/cloud-config-container/nginx/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-config-container/nginx/versions.tf +++ b/modules/cloud-config-container/nginx/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-config-container/simple-nva/versions.tf b/modules/cloud-config-container/simple-nva/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-config-container/simple-nva/versions.tf +++ b/modules/cloud-config-container/simple-nva/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-config-container/squid/versions.tf b/modules/cloud-config-container/squid/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-config-container/squid/versions.tf +++ b/modules/cloud-config-container/squid/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-function-v1/versions.tf b/modules/cloud-function-v1/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-function-v1/versions.tf +++ b/modules/cloud-function-v1/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-function-v2/versions.tf b/modules/cloud-function-v2/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-function-v2/versions.tf +++ b/modules/cloud-function-v2/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-identity-group/versions.tf b/modules/cloud-identity-group/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-identity-group/versions.tf +++ b/modules/cloud-identity-group/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloud-run/versions.tf b/modules/cloud-run/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloud-run/versions.tf +++ b/modules/cloud-run/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/cloudsql-instance/versions.tf b/modules/cloudsql-instance/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/cloudsql-instance/versions.tf +++ b/modules/cloudsql-instance/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/compute-mig/versions.tf b/modules/compute-mig/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/compute-mig/versions.tf +++ b/modules/compute-mig/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/compute-vm/versions.tf b/modules/compute-vm/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/compute-vm/versions.tf +++ b/modules/compute-vm/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/container-registry/versions.tf b/modules/container-registry/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/container-registry/versions.tf +++ b/modules/container-registry/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/data-catalog-policy-tag/versions.tf b/modules/data-catalog-policy-tag/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/data-catalog-policy-tag/versions.tf +++ b/modules/data-catalog-policy-tag/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/datafusion/versions.tf b/modules/datafusion/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/datafusion/versions.tf +++ b/modules/datafusion/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/dataplex-datascan/versions.tf b/modules/dataplex-datascan/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/dataplex-datascan/versions.tf +++ b/modules/dataplex-datascan/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/dataplex/versions.tf b/modules/dataplex/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/dataplex/versions.tf +++ b/modules/dataplex/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/dataproc/versions.tf b/modules/dataproc/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/dataproc/versions.tf +++ b/modules/dataproc/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/dns-response-policy/versions.tf b/modules/dns-response-policy/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/dns-response-policy/versions.tf +++ b/modules/dns-response-policy/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/dns/versions.tf b/modules/dns/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/dns/versions.tf +++ b/modules/dns/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/endpoints/versions.tf b/modules/endpoints/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/endpoints/versions.tf +++ b/modules/endpoints/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/folder/versions.tf b/modules/folder/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/folder/versions.tf +++ b/modules/folder/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/gcs/versions.tf b/modules/gcs/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/gcs/versions.tf +++ b/modules/gcs/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/gcve-private-cloud/versions.tf b/modules/gcve-private-cloud/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/gcve-private-cloud/versions.tf +++ b/modules/gcve-private-cloud/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/gke-cluster-autopilot/main.tf b/modules/gke-cluster-autopilot/main.tf index 4ca8ee54a..e11609049 100644 --- a/modules/gke-cluster-autopilot/main.tf +++ b/modules/gke-cluster-autopilot/main.tf @@ -339,11 +339,7 @@ resource "google_compute_network_peering_routes_config" "gke_master" { count = ( try(var.private_cluster_config.peering_config, null) != null ? 1 : 0 ) - project = ( - try(var.private_cluster_config.peering_config, null) == null - ? var.project_id - : var.private_cluster_config.peering_config.project_id - ) + project = coalesce(var.private_cluster_config.peering_config.project_id, var.project_id) peering = try( google_container_cluster.cluster.private_cluster_config.0.peering_name, null diff --git a/modules/gke-cluster-autopilot/versions.tf b/modules/gke-cluster-autopilot/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/gke-cluster-autopilot/versions.tf +++ b/modules/gke-cluster-autopilot/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/gke-cluster-standard/main.tf b/modules/gke-cluster-standard/main.tf index 622c2e431..2a6a4b8f7 100644 --- a/modules/gke-cluster-standard/main.tf +++ b/modules/gke-cluster-standard/main.tf @@ -432,11 +432,7 @@ resource "google_compute_network_peering_routes_config" "gke_master" { count = ( try(var.private_cluster_config.peering_config, null) != null ? 1 : 0 ) - project = ( - try(var.private_cluster_config.peering_config, null) == null - ? var.project_id - : var.private_cluster_config.peering_config.project_id - ) + project = coalesce(var.private_cluster_config.peering_config.project_id, var.project_id) peering = try( google_container_cluster.cluster.private_cluster_config.0.peering_name, null diff --git a/modules/gke-cluster-standard/versions.tf b/modules/gke-cluster-standard/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/gke-cluster-standard/versions.tf +++ b/modules/gke-cluster-standard/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/gke-hub/versions.tf b/modules/gke-hub/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/gke-hub/versions.tf +++ b/modules/gke-hub/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/gke-nodepool/README.md b/modules/gke-nodepool/README.md index 6a66b2c7b..dbcc0cc40 100644 --- a/modules/gke-nodepool/README.md +++ b/modules/gke-nodepool/README.md @@ -104,7 +104,6 @@ module "cluster-1-nodepool-1" { # tftest modules=1 resources=2 inventory=config.yaml ``` - ## Variables | name | description | type | required | default | @@ -126,7 +125,7 @@ module "cluster-1-nodepool-1" { | [service_account](variables.tf#L164) | Nodepool service account. If this variable is set to null, the default GCE service account will be used. If set and email is null, a service account will be created. If scopes are null a default will be used. | object({…}) | | {} | | [sole_tenant_nodegroup](variables.tf#L175) | Sole tenant node group. | string | | null | | [tags](variables.tf#L181) | Network tags applied to nodes. | list(string) | | null | -| [taints](variables.tf#L187) | Kubernetes taints applied to all nodes. | list(object({…})) | | null | +| [taints](variables.tf#L187) | Kubernetes taints applied to all nodes. | map(object({…})) | | {} | ## Outputs @@ -136,5 +135,4 @@ module "cluster-1-nodepool-1" { | [name](outputs.tf#L22) | Nodepool name. | | | [service_account_email](outputs.tf#L27) | Service account email. | | | [service_account_iam_email](outputs.tf#L32) | Service account email. | | - diff --git a/modules/gke-nodepool/main.tf b/modules/gke-nodepool/main.tf index 9ae4cf284..78e1a2e3a 100644 --- a/modules/gke-nodepool/main.tf +++ b/modules/gke-nodepool/main.tf @@ -147,9 +147,6 @@ resource "google_container_node_pool" "nodepool" { var.node_config.spot == true && var.node_config.preemptible != true ) tags = var.tags - taint = ( - var.taints == null ? [] : concat(var.taints, local.taints_windows) - ) dynamic "ephemeral_storage_config" { for_each = var.node_config.ephemeral_ssd_count != null ? [""] : [] @@ -217,6 +214,14 @@ resource "google_container_node_pool" "nodepool" { enable_integrity_monitoring = var.node_config.shielded_instance_config.enable_integrity_monitoring } } + dynamic "taint" { + for_each = var.taints + content { + key = taint.key + value = taint.value.value + effect = taint.effect + } + } dynamic "workload_metadata_config" { for_each = var.node_config.workload_metadata_config_mode != null ? [""] : [] content { diff --git a/modules/gke-nodepool/variables.tf b/modules/gke-nodepool/variables.tf index 1166c34f4..46f3f1d30 100644 --- a/modules/gke-nodepool/variables.tf +++ b/modules/gke-nodepool/variables.tf @@ -186,10 +186,17 @@ variable "tags" { variable "taints" { description = "Kubernetes taints applied to all nodes." - type = list(object({ - key = string + type = map(object({ value = string effect = string })) - default = null + nullable = false + default = {} + validation { + condition = alltrue([ + for k, v in var.taints : + contains(["NO_SCHEDULE", "PREFER_NO_SCHEDULE", "NO_EXECUTE"], v.effect) + ]) + error_message = "Invalid taint effect." + } } diff --git a/modules/gke-nodepool/versions.tf b/modules/gke-nodepool/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/gke-nodepool/versions.tf +++ b/modules/gke-nodepool/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/iam-service-account/versions.tf b/modules/iam-service-account/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/iam-service-account/versions.tf +++ b/modules/iam-service-account/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/kms/versions.tf b/modules/kms/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/kms/versions.tf +++ b/modules/kms/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/logging-bucket/versions.tf b/modules/logging-bucket/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/logging-bucket/versions.tf +++ b/modules/logging-bucket/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/ncc-spoke-ra/versions.tf b/modules/ncc-spoke-ra/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/ncc-spoke-ra/versions.tf +++ b/modules/ncc-spoke-ra/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-address/versions.tf b/modules/net-address/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-address/versions.tf +++ b/modules/net-address/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-cloudnat/versions.tf b/modules/net-cloudnat/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-cloudnat/versions.tf +++ b/modules/net-cloudnat/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-firewall-policy/versions.tf b/modules/net-firewall-policy/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-firewall-policy/versions.tf +++ b/modules/net-firewall-policy/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-ipsec-over-interconnect/versions.tf b/modules/net-ipsec-over-interconnect/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-ipsec-over-interconnect/versions.tf +++ b/modules/net-ipsec-over-interconnect/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-lb-app-ext/versions.tf b/modules/net-lb-app-ext/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-lb-app-ext/versions.tf +++ b/modules/net-lb-app-ext/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-lb-app-int/README.md b/modules/net-lb-app-int/README.md index add393c14..29b356330 100644 --- a/modules/net-lb-app-int/README.md +++ b/modules/net-lb-app-int/README.md @@ -241,6 +241,7 @@ Similarly to instance groups, NEGs can also be managed by this module which supp ```hcl resource "google_compute_address" "test" { + project = var.project_id name = "neg-test" subnetwork = var.subnet.self_link address_type = "INTERNAL" diff --git a/modules/net-lb-app-int/versions.tf b/modules/net-lb-app-int/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-lb-app-int/versions.tf +++ b/modules/net-lb-app-int/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-lb-ext/versions.tf b/modules/net-lb-ext/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-lb-ext/versions.tf +++ b/modules/net-lb-ext/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-lb-int/versions.tf b/modules/net-lb-int/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-lb-int/versions.tf +++ b/modules/net-lb-int/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-lb-proxy-int/README.md b/modules/net-lb-proxy-int/README.md index e606b6bc2..85f9716c6 100644 --- a/modules/net-lb-proxy-int/README.md +++ b/modules/net-lb-proxy-int/README.md @@ -155,6 +155,7 @@ Similarly to instance groups, NEGs can also be managed by this module which supp ```hcl resource "google_compute_address" "test" { + project = var.project_id name = "neg-test" subnetwork = var.subnet.self_link address_type = "INTERNAL" diff --git a/modules/net-lb-proxy-int/versions.tf b/modules/net-lb-proxy-int/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-lb-proxy-int/versions.tf +++ b/modules/net-lb-proxy-int/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-swp/versions.tf b/modules/net-swp/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-swp/versions.tf +++ b/modules/net-swp/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-vlan-attachment/versions.tf b/modules/net-vlan-attachment/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-vlan-attachment/versions.tf +++ b/modules/net-vlan-attachment/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-vpc-firewall/versions.tf b/modules/net-vpc-firewall/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-vpc-firewall/versions.tf +++ b/modules/net-vpc-firewall/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-vpc-peering/versions.tf b/modules/net-vpc-peering/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-vpc-peering/versions.tf +++ b/modules/net-vpc-peering/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-vpc/versions.tf b/modules/net-vpc/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-vpc/versions.tf +++ b/modules/net-vpc/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-vpn-dynamic/versions.tf b/modules/net-vpn-dynamic/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-vpn-dynamic/versions.tf +++ b/modules/net-vpn-dynamic/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-vpn-ha/versions.tf b/modules/net-vpn-ha/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-vpn-ha/versions.tf +++ b/modules/net-vpn-ha/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/net-vpn-static/versions.tf b/modules/net-vpn-static/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/net-vpn-static/versions.tf +++ b/modules/net-vpn-static/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/organization/versions.tf b/modules/organization/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/organization/versions.tf +++ b/modules/organization/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/project/README.md b/modules/project/README.md index 3fddf95f9..8a2a1b4e5 100644 --- a/modules/project/README.md +++ b/modules/project/README.md @@ -606,7 +606,7 @@ output "compute_robot" { | [lien_reason](variables.tf#L120) | If non-empty, creates a project lien with this description. | string | | null | | [logging_data_access](variables.tf#L126) | Control activation of data access logs. Format is service => { log type => [exempted members]}. The special 'allServices' key denotes configuration for all services. | map(map(list(string))) | | {} | | [logging_exclusions](variables.tf#L141) | Logging exclusions for this project in the form {NAME -> FILTER}. | map(string) | | {} | -| [logging_sinks](variables.tf#L148) | Logging sinks to create for this project. | map(object({…})) | | {} | +| [logging_sinks](variables.tf#L148) | Logging sinks to create for this project. | map(object({…})) | | {} | | [metric_scopes](variables.tf#L179) | List of projects that will act as metric scopes for this project. | list(string) | | [] | | [org_policies](variables.tf#L191) | Organization policies applied to this project keyed by policy name. | map(object({…})) | | {} | | [org_policies_data_path](variables.tf#L218) | Path containing org policies in YAML format. | string | | null | diff --git a/modules/project/variables.tf b/modules/project/variables.tf index 68f8b6c02..3a1a8eff2 100644 --- a/modules/project/variables.tf +++ b/modules/project/variables.tf @@ -156,7 +156,7 @@ variable "logging_sinks" { filter = string iam = optional(bool, true) type = string - unique_writer = optional(bool) + unique_writer = optional(bool, true) })) default = {} nullable = false diff --git a/modules/project/versions.tf b/modules/project/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/project/versions.tf +++ b/modules/project/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/projects-data-source/versions.tf b/modules/projects-data-source/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/projects-data-source/versions.tf +++ b/modules/projects-data-source/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/pubsub/versions.tf b/modules/pubsub/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/pubsub/versions.tf +++ b/modules/pubsub/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/secret-manager/main.tf b/modules/secret-manager/main.tf index 73932b5e0..1a17ac21c 100644 --- a/modules/secret-manager/main.tf +++ b/modules/secret-manager/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2022 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -44,7 +44,8 @@ resource "google_secret_manager_secret" "default" { dynamic "replication" { for_each = each.value == null ? [""] : [] content { - automatic = true + # TODO(jccb): support custom keys inside auto + auto {} } } diff --git a/modules/secret-manager/versions.tf b/modules/secret-manager/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/secret-manager/versions.tf +++ b/modules/secret-manager/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/service-directory/versions.tf b/modules/service-directory/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/service-directory/versions.tf +++ b/modules/service-directory/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/source-repository/versions.tf b/modules/source-repository/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/source-repository/versions.tf +++ b/modules/source-repository/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/modules/vpc-sc/versions.tf b/modules/vpc-sc/versions.tf index 91a91a314..3963660f0 100644 --- a/modules/vpc-sc/versions.tf +++ b/modules/vpc-sc/versions.tf @@ -17,11 +17,11 @@ terraform { required_providers { google = { source = "hashicorp/google" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } google-beta = { source = "hashicorp/google-beta" - version = ">= 4.82.0" # tftest + version = ">= 5.0.0" # tftest } } } diff --git a/tests/modules/cloud_function_v2/examples/iam.yaml b/tests/modules/cloud_function_v2/examples/iam.yaml index 4bbd66533..21b1eff65 100644 --- a/tests/modules/cloud_function_v2/examples/iam.yaml +++ b/tests/modules/cloud_function_v2/examples/iam.yaml @@ -24,19 +24,10 @@ values: module.cf-http.google_cloudfunctions2_function.function: {} module.cf-http.google_storage_bucket_object.bundle: bucket: test-cf-bundles - cache_control: null - content: null - content_disposition: null - content_encoding: null - content_language: null customer_encryption: [] detect_md5hash: different hash - event_based_hold: null - metadata: null name: bundle-6f1ece136848fee658e335b05fe2d79d.zip source: bundle.zip - temporary_hold: null - timeouts: null counts: google_cloud_run_service_iam_binding: 1 @@ -45,5 +36,4 @@ counts: modules: 1 resources: 3 -outputs: {} diff --git a/tests/modules/cloud_run/examples/trigger-service-account-external.yaml b/tests/modules/cloud_run/examples/trigger-service-account-external.yaml index 45d15ea43..5de6a53b4 100644 --- a/tests/modules/cloud_run/examples/trigger-service-account-external.yaml +++ b/tests/modules/cloud_run/examples/trigger-service-account-external.yaml @@ -45,7 +45,6 @@ values: service: hello gke: [] workflow: null - event_data_content_type: null labels: null location: europe-west1 matching_criteria: diff --git a/tests/modules/cloud_run/examples/trigger-service-account.yaml b/tests/modules/cloud_run/examples/trigger-service-account.yaml index 92b8fce8b..35117b795 100644 --- a/tests/modules/cloud_run/examples/trigger-service-account.yaml +++ b/tests/modules/cloud_run/examples/trigger-service-account.yaml @@ -51,7 +51,6 @@ values: service: hello gke: [] workflow: null - event_data_content_type: null labels: null location: europe-west1 matching_criteria: @@ -74,7 +73,6 @@ values: service: hello gke: [] workflow: null - event_data_content_type: null labels: null location: europe-west1 matching_criteria: diff --git a/tests/modules/project/examples/logging.yaml b/tests/modules/project/examples/logging.yaml index 9902c0adc..9634d8d10 100644 --- a/tests/modules/project/examples/logging.yaml +++ b/tests/modules/project/examples/logging.yaml @@ -1,4 +1,4 @@ -# Copyright 2022 Google LLC +# Copyright 2023 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -33,7 +33,7 @@ values: filter: severity=DEBUG name: debug project: my-project - unique_writer_identity: false + unique_writer_identity: true module.project-host.google_logging_project_sink.sink["info"]: description: info (Terraform-managed). disabled: false @@ -41,7 +41,7 @@ values: filter: severity=INFO name: info project: my-project - unique_writer_identity: false + unique_writer_identity: true module.project-host.google_logging_project_sink.sink["notice"]: description: notice (Terraform-managed). disabled: false @@ -49,7 +49,7 @@ values: filter: severity=NOTICE name: notice project: my-project - unique_writer_identity: false + unique_writer_identity: true module.project-host.google_logging_project_sink.sink["warnings"]: description: warnings (Terraform-managed). destination: storage.googleapis.com/gcs_sink @@ -58,7 +58,7 @@ values: filter: severity=WARNING name: warnings project: my-project - unique_writer_identity: false + unique_writer_identity: true module.project-host.google_project.project[0]: auto_create_network: false billing_account: 123456-123456-123456 diff --git a/tests/modules/secret_manager/examples/iam.yaml b/tests/modules/secret_manager/examples/iam.yaml index 98fae344e..e3dcebb24 100644 --- a/tests/modules/secret_manager/examples/iam.yaml +++ b/tests/modules/secret_manager/examples/iam.yaml @@ -16,13 +16,14 @@ values: module.secret-manager.google_secret_manager_secret.default["test-auto"]: project: my-project replication: - - automatic: true + - auto: + - customer_managed_encryption: [] user_managed: [] secret_id: test-auto module.secret-manager.google_secret_manager_secret.default["test-manual"]: project: my-project replication: - - automatic: null + - auto: [] user_managed: - replicas: - customer_managed_encryption: [] diff --git a/tests/modules/vpc_sc/examples/bridge.yaml b/tests/modules/vpc_sc/examples/bridge.yaml index 4ff1246a6..e062d04d0 100644 --- a/tests/modules/vpc_sc/examples/bridge.yaml +++ b/tests/modules/vpc_sc/examples/bridge.yaml @@ -48,7 +48,7 @@ values: - access_levels: null egress_policies: [] ingress_policies: [] - resources: [] + resources: null restricted_services: null vpc_accessible_services: [] title: b2