diff --git a/modules/bigquery-dataset/README.md b/modules/bigquery-dataset/README.md index 67ec6273..ab523129 100644 --- a/modules/bigquery-dataset/README.md +++ b/modules/bigquery-dataset/README.md @@ -294,7 +294,7 @@ module "bigquery-dataset" { | [iam](variables.tf#L92) | IAM bindings in {ROLE => [MEMBERS]} format. Mutually exclusive with the access_* variables used for basic roles. | map(list(string)) | | {} | | [labels](variables.tf#L103) | Dataset labels. | map(string) | | {} | | [location](variables.tf#L109) | Dataset location. | string | | "EU" | -| [materialized_views](variables.tf#L115) | Materialized views definitions. | map(object({…})) | | {} | +| [materialized_views](variables.tf#L115) | Materialized views definitions. | map(object({…})) | | {} | | [options](variables.tf#L148) | Dataset options. | object({…}) | | {} | | [tables](variables.tf#L167) | Table definitions. Options and partitioning default to null. Partitioning can only use `range` or `time`, set the unused one to null. | map(object({…})) | | {} | | [views](variables.tf#L198) | View definitions. | map(object({…})) | | {} | @@ -306,9 +306,11 @@ module "bigquery-dataset" { | [dataset](outputs.tf#L17) | Dataset resource. | | | [dataset_id](outputs.tf#L22) | Dataset id. | | | [id](outputs.tf#L36) | Fully qualified dataset id. | | -| [self_link](outputs.tf#L50) | Dataset self link. | | -| [table_ids](outputs.tf#L64) | Map of fully qualified table ids keyed by table ids. | | -| [tables](outputs.tf#L69) | Table resources. | | -| [view_ids](outputs.tf#L74) | Map of fully qualified view ids keyed by view ids. | | -| [views](outputs.tf#L79) | View resources. | | +| [materialized_view_ids](outputs.tf#L50) | Map of fully qualified materialized view ids keyed by view ids. | | +| [materialized_views](outputs.tf#L55) | Materialized view resources. | | +| [self_link](outputs.tf#L60) | Dataset self link. | | +| [table_ids](outputs.tf#L74) | Map of fully qualified table ids keyed by table ids. | | +| [tables](outputs.tf#L79) | Table resources. | | +| [view_ids](outputs.tf#L84) | Map of fully qualified view ids keyed by view ids. | | +| [views](outputs.tf#L89) | View resources. | | diff --git a/modules/bigquery-dataset/outputs.tf b/modules/bigquery-dataset/outputs.tf index 5c2ee466..3beb5f82 100644 --- a/modules/bigquery-dataset/outputs.tf +++ b/modules/bigquery-dataset/outputs.tf @@ -47,6 +47,16 @@ output "id" { ] } +output "materialized_view_ids" { + description = "Map of fully qualified materialized view ids keyed by view ids." + value = { for k, v in google_bigquery_table.materialized_view : v.table_id => v.id } +} + +output "materialized_views" { + description = "Materialized view resources." + value = google_bigquery_table.materialized_view +} + output "self_link" { description = "Dataset self link." value = google_bigquery_dataset.default.self_link diff --git a/modules/bigquery-dataset/variables.tf b/modules/bigquery-dataset/variables.tf index ecf7c6c3..8a33c057 100644 --- a/modules/bigquery-dataset/variables.tf +++ b/modules/bigquery-dataset/variables.tf @@ -116,13 +116,13 @@ variable "materialized_views" { description = "Materialized views definitions." type = map(object({ query = string + allow_non_incremental_definition = optional(bool) deletion_protection = optional(bool) description = optional(string, "Terraform managed.") + enable_refresh = optional(bool) friendly_name = optional(string) labels = optional(map(string), {}) - enable_refresh = optional(bool) refresh_interval_ms = optional(bool) - allow_non_incremental_definition = optional(bool) options = optional(object({ clustering = optional(list(string)) expiration_time = optional(number)