Skip to content

Commit a16fc47

Browse files
Fix Stretch Private Cloud creation in vmwareengine (#10443) (#2167)
[upstream:71d5293f31bbbbd98a7e073050e4f52e092fa964] Signed-off-by: Modular Magician <[email protected]>
1 parent 6c59fc2 commit a16fc47

File tree

1 file changed

+36
-15
lines changed

1 file changed

+36
-15
lines changed

tfplan2cai/converters/google/resources/services/vmwareengine/vmwareengine_private_cloud.go

+36-15
Original file line numberDiff line numberDiff line change
@@ -87,18 +87,6 @@ func GetVmwareenginePrivateCloudApiObject(d tpgresource.TerraformResourceData, c
8787
} else if v, ok := d.GetOkExists("type"); !tpgresource.IsEmptyValue(reflect.ValueOf(typeProp)) && (ok || !reflect.DeepEqual(v, typeProp)) {
8888
obj["type"] = typeProp
8989
}
90-
preferredZoneProp, err := expandVmwareenginePrivateCloudPreferredZone(d.Get("preferred_zone"), d, config)
91-
if err != nil {
92-
return nil, err
93-
} else if v, ok := d.GetOkExists("preferred_zone"); !tpgresource.IsEmptyValue(reflect.ValueOf(preferredZoneProp)) && (ok || !reflect.DeepEqual(v, preferredZoneProp)) {
94-
obj["preferredZone"] = preferredZoneProp
95-
}
96-
secondaryZoneProp, err := expandVmwareenginePrivateCloudSecondaryZone(d.Get("secondary_zone"), d, config)
97-
if err != nil {
98-
return nil, err
99-
} else if v, ok := d.GetOkExists("secondary_zone"); !tpgresource.IsEmptyValue(reflect.ValueOf(secondaryZoneProp)) && (ok || !reflect.DeepEqual(v, secondaryZoneProp)) {
100-
obj["secondaryZone"] = secondaryZoneProp
101-
}
10290

10391
return obj, nil
10492
}
@@ -197,6 +185,13 @@ func expandVmwareenginePrivateCloudManagementCluster(v interface{}, d tpgresourc
197185
transformed["nodeTypeConfigs"] = transformedNodeTypeConfigs
198186
}
199187

188+
transformedStretchedClusterConfig, err := expandVmwareenginePrivateCloudManagementClusterStretchedClusterConfig(original["stretched_cluster_config"], d, config)
189+
if err != nil {
190+
return nil, err
191+
} else if val := reflect.ValueOf(transformedStretchedClusterConfig); val.IsValid() && !tpgresource.IsEmptyValue(val) {
192+
transformed["stretchedClusterConfig"] = transformedStretchedClusterConfig
193+
}
194+
200195
return transformed, nil
201196
}
202197

@@ -244,14 +239,40 @@ func expandVmwareenginePrivateCloudManagementClusterNodeTypeConfigsCustomCoreCou
244239
return v, nil
245240
}
246241

247-
func expandVmwareenginePrivateCloudType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
242+
func expandVmwareenginePrivateCloudManagementClusterStretchedClusterConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
243+
l := v.([]interface{})
244+
if len(l) == 0 || l[0] == nil {
245+
return nil, nil
246+
}
247+
raw := l[0]
248+
original := raw.(map[string]interface{})
249+
transformed := make(map[string]interface{})
250+
251+
transformedPreferredLocation, err := expandVmwareenginePrivateCloudManagementClusterStretchedClusterConfigPreferredLocation(original["preferred_location"], d, config)
252+
if err != nil {
253+
return nil, err
254+
} else if val := reflect.ValueOf(transformedPreferredLocation); val.IsValid() && !tpgresource.IsEmptyValue(val) {
255+
transformed["preferredLocation"] = transformedPreferredLocation
256+
}
257+
258+
transformedSecondaryLocation, err := expandVmwareenginePrivateCloudManagementClusterStretchedClusterConfigSecondaryLocation(original["secondary_location"], d, config)
259+
if err != nil {
260+
return nil, err
261+
} else if val := reflect.ValueOf(transformedSecondaryLocation); val.IsValid() && !tpgresource.IsEmptyValue(val) {
262+
transformed["secondaryLocation"] = transformedSecondaryLocation
263+
}
264+
265+
return transformed, nil
266+
}
267+
268+
func expandVmwareenginePrivateCloudManagementClusterStretchedClusterConfigPreferredLocation(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
248269
return v, nil
249270
}
250271

251-
func expandVmwareenginePrivateCloudPreferredZone(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
272+
func expandVmwareenginePrivateCloudManagementClusterStretchedClusterConfigSecondaryLocation(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
252273
return v, nil
253274
}
254275

255-
func expandVmwareenginePrivateCloudSecondaryZone(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
276+
func expandVmwareenginePrivateCloudType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
256277
return v, nil
257278
}

0 commit comments

Comments
 (0)