From 967e2d29b4a1b992e6ba25da9fbdc197d13fd212 Mon Sep 17 00:00:00 2001 From: drfaust92 Date: Sat, 16 Dec 2023 00:33:29 +0200 Subject: [PATCH 1/3] bq analyticshub listing - add support for restrictedExportConfig --- .../bigqueryanalyticshub/Listing.yaml | 25 ++++++++++++++++ ...ery_analyticshub_listing_restricted.tf.erb | 30 +++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 mmv1/templates/terraform/examples/bigquery_analyticshub_listing_restricted.tf.erb diff --git a/mmv1/products/bigqueryanalyticshub/Listing.yaml b/mmv1/products/bigqueryanalyticshub/Listing.yaml index a4be04d1c723..f9cfd2fae16d 100644 --- a/mmv1/products/bigqueryanalyticshub/Listing.yaml +++ b/mmv1/products/bigqueryanalyticshub/Listing.yaml @@ -53,6 +53,19 @@ examples: data_exchange_id: 'my_data_exchange' listing_id: 'my_listing' description: 'example data exchange' + - !ruby/object:Provider::Terraform::Examples + name: 'bigquery_analyticshub_listing_restricted' + primary_resource_id: 'listing' + primary_resource_name: "fmt.Sprintf(\"tf_test_my_data_exchange%s\", + context[\"\ + random_suffix\"]), fmt.Sprintf(\"tf_test_my_listing%s\", + context[\"random_suffix\"\ + ])" + region_override: 'US' + vars: + data_exchange_id: 'my_data_exchange' + listing_id: 'my_listing' + description: 'example data exchange' properties: - !ruby/object:Api::Type::String name: name @@ -146,3 +159,15 @@ properties: projects/myproject/datasets/123 required: true diff_suppress_func: 'tpgresource.ProjectNumberDiffSuppress' + - !ruby/object:Api::Type::NestedObject + name: restrictedExportConfig + description: if set, restricted export configuration will be propagated and enforced on the linked dataset. + properties: + - !ruby/object:Api::Type::Boolean + name: 'enabled' + description: + If true, enable restricted export. + - !ruby/object:Api::Type::Boolean + name: 'restrictQueryResult' + description: + If true, restrict export of query result derived from restricted linked dataset table. diff --git a/mmv1/templates/terraform/examples/bigquery_analyticshub_listing_restricted.tf.erb b/mmv1/templates/terraform/examples/bigquery_analyticshub_listing_restricted.tf.erb new file mode 100644 index 000000000000..7c3ba2242db1 --- /dev/null +++ b/mmv1/templates/terraform/examples/bigquery_analyticshub_listing_restricted.tf.erb @@ -0,0 +1,30 @@ +resource "google_bigquery_analytics_hub_data_exchange" "<%= ctx[:primary_resource_id] %>" { + location = "US" + data_exchange_id = "<%= ctx[:vars]['data_exchange_id'] %>" + display_name = "<%= ctx[:vars]['data_exchange_id'] %>" + description = "<%= ctx[:vars]['description'] %>" +} + +resource "google_bigquery_analytics_hub_listing" "<%= ctx[:primary_resource_id] %>" { + location = "US" + data_exchange_id = google_bigquery_analytics_hub_data_exchange.<%= ctx[:primary_resource_id] %>.data_exchange_id + listing_id = "<%= ctx[:vars]['listing_id'] %>" + display_name = "<%= ctx[:vars]['listing_id'] %>" + description = "<%= ctx[:vars]['description'] %>" + + bigquery_dataset { + dataset = google_bigquery_dataset.<%= ctx[:primary_resource_id] %>.id + } + + restricted_export_config { + enabled = true + restrict_query_result = true + } +} + +resource "google_bigquery_dataset" "<%= ctx[:primary_resource_id] %>" { + dataset_id = "<%= ctx[:vars]['listing_id'] %>" + friendly_name = "<%= ctx[:vars]['listing_id'] %>" + description = "<%= ctx[:vars]['description'] %>" + location = "US" +} \ No newline at end of file From 39a709cdea83b673511ea53b4902cdd0c4e96828 Mon Sep 17 00:00:00 2001 From: drfaust92 Date: Sat, 16 Dec 2023 00:35:40 +0200 Subject: [PATCH 2/3] lint --- mmv1/products/bigqueryanalyticshub/Listing.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mmv1/products/bigqueryanalyticshub/Listing.yaml b/mmv1/products/bigqueryanalyticshub/Listing.yaml index f9cfd2fae16d..f108da9ffb5e 100644 --- a/mmv1/products/bigqueryanalyticshub/Listing.yaml +++ b/mmv1/products/bigqueryanalyticshub/Listing.yaml @@ -170,4 +170,4 @@ properties: - !ruby/object:Api::Type::Boolean name: 'restrictQueryResult' description: - If true, restrict export of query result derived from restricted linked dataset table. + If true, restrict export of query result derived from restricted linked dataset table. From 3fc6c080ca9e167a4ba7c0d7d91a561280588b07 Mon Sep 17 00:00:00 2001 From: "Stephen Lewis (Burrows)" Date: Wed, 20 Dec 2023 10:42:42 -0800 Subject: [PATCH 3/3] Update mmv1/products/bigqueryanalyticshub/Listing.yaml --- mmv1/products/bigqueryanalyticshub/Listing.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mmv1/products/bigqueryanalyticshub/Listing.yaml b/mmv1/products/bigqueryanalyticshub/Listing.yaml index f108da9ffb5e..26d0017a840d 100644 --- a/mmv1/products/bigqueryanalyticshub/Listing.yaml +++ b/mmv1/products/bigqueryanalyticshub/Listing.yaml @@ -161,7 +161,7 @@ properties: diff_suppress_func: 'tpgresource.ProjectNumberDiffSuppress' - !ruby/object:Api::Type::NestedObject name: restrictedExportConfig - description: if set, restricted export configuration will be propagated and enforced on the linked dataset. + description: If set, restricted export configuration will be propagated and enforced on the linked dataset. properties: - !ruby/object:Api::Type::Boolean name: 'enabled'