@@ -56,6 +56,18 @@ func GetRedisClusterCaiObject(d tpgresource.TerraformResourceData, config *trans
56
56
57
57
func GetRedisClusterApiObject (d tpgresource.TerraformResourceData , config * transport_tpg.Config ) (map [string ]interface {}, error ) {
58
58
obj := make (map [string ]interface {})
59
+ gcsSourceProp , err := expandRedisClusterGcsSource (d .Get ("gcs_source" ), d , config )
60
+ if err != nil {
61
+ return nil , err
62
+ } else if v , ok := d .GetOkExists ("gcs_source" ); ! tpgresource .IsEmptyValue (reflect .ValueOf (gcsSourceProp )) && (ok || ! reflect .DeepEqual (v , gcsSourceProp )) {
63
+ obj ["gcsSource" ] = gcsSourceProp
64
+ }
65
+ managedBackupSourceProp , err := expandRedisClusterManagedBackupSource (d .Get ("managed_backup_source" ), d , config )
66
+ if err != nil {
67
+ return nil , err
68
+ } else if v , ok := d .GetOkExists ("managed_backup_source" ); ! tpgresource .IsEmptyValue (reflect .ValueOf (managedBackupSourceProp )) && (ok || ! reflect .DeepEqual (v , managedBackupSourceProp )) {
69
+ obj ["managedBackupSource" ] = managedBackupSourceProp
70
+ }
59
71
automatedBackupConfigProp , err := expandRedisClusterAutomatedBackupConfig (d .Get ("automated_backup_config" ), d , config )
60
72
if err != nil {
61
73
return nil , err
@@ -156,6 +168,52 @@ func resourceRedisClusterEncoder(d tpgresource.TerraformResourceData, meta inter
156
168
return obj , nil
157
169
}
158
170
171
+ func expandRedisClusterGcsSource (v interface {}, d tpgresource.TerraformResourceData , config * transport_tpg.Config ) (interface {}, error ) {
172
+ l := v .([]interface {})
173
+ if len (l ) == 0 || l [0 ] == nil {
174
+ return nil , nil
175
+ }
176
+ raw := l [0 ]
177
+ original := raw .(map [string ]interface {})
178
+ transformed := make (map [string ]interface {})
179
+
180
+ transformedUris , err := expandRedisClusterGcsSourceUris (original ["uris" ], d , config )
181
+ if err != nil {
182
+ return nil , err
183
+ } else if val := reflect .ValueOf (transformedUris ); val .IsValid () && ! tpgresource .IsEmptyValue (val ) {
184
+ transformed ["uris" ] = transformedUris
185
+ }
186
+
187
+ return transformed , nil
188
+ }
189
+
190
+ func expandRedisClusterGcsSourceUris (v interface {}, d tpgresource.TerraformResourceData , config * transport_tpg.Config ) (interface {}, error ) {
191
+ return v , nil
192
+ }
193
+
194
+ func expandRedisClusterManagedBackupSource (v interface {}, d tpgresource.TerraformResourceData , config * transport_tpg.Config ) (interface {}, error ) {
195
+ l := v .([]interface {})
196
+ if len (l ) == 0 || l [0 ] == nil {
197
+ return nil , nil
198
+ }
199
+ raw := l [0 ]
200
+ original := raw .(map [string ]interface {})
201
+ transformed := make (map [string ]interface {})
202
+
203
+ transformedBackup , err := expandRedisClusterManagedBackupSourceBackup (original ["backup" ], d , config )
204
+ if err != nil {
205
+ return nil , err
206
+ } else if val := reflect .ValueOf (transformedBackup ); val .IsValid () && ! tpgresource .IsEmptyValue (val ) {
207
+ transformed ["backup" ] = transformedBackup
208
+ }
209
+
210
+ return transformed , nil
211
+ }
212
+
213
+ func expandRedisClusterManagedBackupSourceBackup (v interface {}, d tpgresource.TerraformResourceData , config * transport_tpg.Config ) (interface {}, error ) {
214
+ return v , nil
215
+ }
216
+
159
217
func expandRedisClusterAutomatedBackupConfig (v interface {}, d tpgresource.TerraformResourceData , config * transport_tpg.Config ) (interface {}, error ) {
160
218
l := v .([]interface {})
161
219
if len (l ) == 0 || l [0 ] == nil {
0 commit comments