Skip to content

Commit 690a405

Browse files
Add data clean rooms support (#11067) (#2706)
[upstream:bbf4d6ca31eacc0f40a43355754930bc32191db6] Signed-off-by: Modular Magician <[email protected]>
1 parent 86c5a1e commit 690a405

File tree

2 files changed

+106
-0
lines changed

2 files changed

+106
-0
lines changed

tfplan2cai/converters/google/resources/services/bigqueryanalyticshub/bigqueryanalyticshub_data_exchange.go

+62
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,12 @@ func GetBigqueryAnalyticsHubDataExchangeApiObject(d tpgresource.TerraformResourc
8484
} else if v, ok := d.GetOkExists("icon"); !tpgresource.IsEmptyValue(reflect.ValueOf(iconProp)) && (ok || !reflect.DeepEqual(v, iconProp)) {
8585
obj["icon"] = iconProp
8686
}
87+
sharingEnvironmentConfigProp, err := expandBigqueryAnalyticsHubDataExchangeSharingEnvironmentConfig(d.Get("sharing_environment_config"), d, config)
88+
if err != nil {
89+
return nil, err
90+
} else if v, ok := d.GetOkExists("sharing_environment_config"); !tpgresource.IsEmptyValue(reflect.ValueOf(sharingEnvironmentConfigProp)) && (ok || !reflect.DeepEqual(v, sharingEnvironmentConfigProp)) {
91+
obj["sharingEnvironmentConfig"] = sharingEnvironmentConfigProp
92+
}
8793

8894
return obj, nil
8995
}
@@ -107,3 +113,59 @@ func expandBigqueryAnalyticsHubDataExchangeDocumentation(v interface{}, d tpgres
107113
func expandBigqueryAnalyticsHubDataExchangeIcon(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
108114
return v, nil
109115
}
116+
117+
func expandBigqueryAnalyticsHubDataExchangeSharingEnvironmentConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
118+
l := v.([]interface{})
119+
if len(l) == 0 || l[0] == nil {
120+
return nil, nil
121+
}
122+
raw := l[0]
123+
original := raw.(map[string]interface{})
124+
transformed := make(map[string]interface{})
125+
126+
transformedDefaultExchangeConfig, err := expandBigqueryAnalyticsHubDataExchangeSharingEnvironmentConfigDefaultExchangeConfig(original["default_exchange_config"], d, config)
127+
if err != nil {
128+
return nil, err
129+
} else {
130+
transformed["defaultExchangeConfig"] = transformedDefaultExchangeConfig
131+
}
132+
133+
transformedDcrExchangeConfig, err := expandBigqueryAnalyticsHubDataExchangeSharingEnvironmentConfigDcrExchangeConfig(original["dcr_exchange_config"], d, config)
134+
if err != nil {
135+
return nil, err
136+
} else {
137+
transformed["dcrExchangeConfig"] = transformedDcrExchangeConfig
138+
}
139+
140+
return transformed, nil
141+
}
142+
143+
func expandBigqueryAnalyticsHubDataExchangeSharingEnvironmentConfigDefaultExchangeConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
144+
l := v.([]interface{})
145+
if len(l) == 0 {
146+
return nil, nil
147+
}
148+
149+
if l[0] == nil {
150+
transformed := make(map[string]interface{})
151+
return transformed, nil
152+
}
153+
transformed := make(map[string]interface{})
154+
155+
return transformed, nil
156+
}
157+
158+
func expandBigqueryAnalyticsHubDataExchangeSharingEnvironmentConfigDcrExchangeConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
159+
l := v.([]interface{})
160+
if len(l) == 0 {
161+
return nil, nil
162+
}
163+
164+
if l[0] == nil {
165+
transformed := make(map[string]interface{})
166+
return transformed, nil
167+
}
168+
transformed := make(map[string]interface{})
169+
170+
return transformed, nil
171+
}

tfplan2cai/converters/google/resources/services/bigqueryanalyticshub/bigqueryanalyticshub_listing.go

+44
Original file line numberDiff line numberDiff line change
@@ -236,13 +236,46 @@ func expandBigqueryAnalyticsHubListingBigqueryDataset(v interface{}, d tpgresour
236236
transformed["dataset"] = transformedDataset
237237
}
238238

239+
transformedSelectedResources, err := expandBigqueryAnalyticsHubListingBigqueryDatasetSelectedResources(original["selected_resources"], d, config)
240+
if err != nil {
241+
return nil, err
242+
} else if val := reflect.ValueOf(transformedSelectedResources); val.IsValid() && !tpgresource.IsEmptyValue(val) {
243+
transformed["selectedResources"] = transformedSelectedResources
244+
}
245+
239246
return transformed, nil
240247
}
241248

242249
func expandBigqueryAnalyticsHubListingBigqueryDatasetDataset(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
243250
return v, nil
244251
}
245252

253+
func expandBigqueryAnalyticsHubListingBigqueryDatasetSelectedResources(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
254+
l := v.([]interface{})
255+
req := make([]interface{}, 0, len(l))
256+
for _, raw := range l {
257+
if raw == nil {
258+
continue
259+
}
260+
original := raw.(map[string]interface{})
261+
transformed := make(map[string]interface{})
262+
263+
transformedTable, err := expandBigqueryAnalyticsHubListingBigqueryDatasetSelectedResourcesTable(original["table"], d, config)
264+
if err != nil {
265+
return nil, err
266+
} else if val := reflect.ValueOf(transformedTable); val.IsValid() && !tpgresource.IsEmptyValue(val) {
267+
transformed["table"] = transformedTable
268+
}
269+
270+
req = append(req, transformed)
271+
}
272+
return req, nil
273+
}
274+
275+
func expandBigqueryAnalyticsHubListingBigqueryDatasetSelectedResourcesTable(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
276+
return v, nil
277+
}
278+
246279
func expandBigqueryAnalyticsHubListingRestrictedExportConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
247280
l := v.([]interface{})
248281
if len(l) == 0 || l[0] == nil {
@@ -259,6 +292,13 @@ func expandBigqueryAnalyticsHubListingRestrictedExportConfig(v interface{}, d tp
259292
transformed["enabled"] = transformedEnabled
260293
}
261294

295+
transformedRestrictDirectTableAccess, err := expandBigqueryAnalyticsHubListingRestrictedExportConfigRestrictDirectTableAccess(original["restrict_direct_table_access"], d, config)
296+
if err != nil {
297+
return nil, err
298+
} else if val := reflect.ValueOf(transformedRestrictDirectTableAccess); val.IsValid() && !tpgresource.IsEmptyValue(val) {
299+
transformed["restrictDirectTableAccess"] = transformedRestrictDirectTableAccess
300+
}
301+
262302
transformedRestrictQueryResult, err := expandBigqueryAnalyticsHubListingRestrictedExportConfigRestrictQueryResult(original["restrict_query_result"], d, config)
263303
if err != nil {
264304
return nil, err
@@ -273,6 +313,10 @@ func expandBigqueryAnalyticsHubListingRestrictedExportConfigEnabled(v interface{
273313
return v, nil
274314
}
275315

316+
func expandBigqueryAnalyticsHubListingRestrictedExportConfigRestrictDirectTableAccess(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
317+
return v, nil
318+
}
319+
276320
func expandBigqueryAnalyticsHubListingRestrictedExportConfigRestrictQueryResult(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
277321
return v, nil
278322
}

0 commit comments

Comments
 (0)