@@ -78,6 +78,15 @@ func ResourceParallelstoreInstance() *schema.Resource {
78
78
ForceNew : true ,
79
79
Description : `Part of 'parent'. See documentation of 'projectsId'.` ,
80
80
},
81
+ "deployment_type" : {
82
+ Type : schema .TypeString ,
83
+ Optional : true ,
84
+ Description : `Parallelstore Instance deployment type.
85
+ Possible values:
86
+ DEPLOYMENT_TYPE_UNSPECIFIED
87
+ SCRATCH
88
+ PERSISTENT` ,
89
+ },
81
90
"description" : {
82
91
Type : schema .TypeString ,
83
92
Optional : true ,
@@ -271,6 +280,12 @@ func resourceParallelstoreInstanceCreate(d *schema.ResourceData, meta interface{
271
280
} else if v , ok := d .GetOkExists ("directory_stripe_level" ); ! tpgresource .IsEmptyValue (reflect .ValueOf (directoryStripeLevelProp )) && (ok || ! reflect .DeepEqual (v , directoryStripeLevelProp )) {
272
281
obj ["directoryStripeLevel" ] = directoryStripeLevelProp
273
282
}
283
+ deploymentTypeProp , err := expandParallelstoreInstanceDeploymentType (d .Get ("deployment_type" ), d , config )
284
+ if err != nil {
285
+ return err
286
+ } else if v , ok := d .GetOkExists ("deployment_type" ); ! tpgresource .IsEmptyValue (reflect .ValueOf (deploymentTypeProp )) && (ok || ! reflect .DeepEqual (v , deploymentTypeProp )) {
287
+ obj ["deploymentType" ] = deploymentTypeProp
288
+ }
274
289
labelsProp , err := expandParallelstoreInstanceEffectiveLabels (d .Get ("effective_labels" ), d , config )
275
290
if err != nil {
276
291
return err
@@ -432,6 +447,9 @@ func resourceParallelstoreInstanceRead(d *schema.ResourceData, meta interface{})
432
447
if err := d .Set ("directory_stripe_level" , flattenParallelstoreInstanceDirectoryStripeLevel (res ["directoryStripeLevel" ], d , config )); err != nil {
433
448
return fmt .Errorf ("Error reading Instance: %s" , err )
434
449
}
450
+ if err := d .Set ("deployment_type" , flattenParallelstoreInstanceDeploymentType (res ["deploymentType" ], d , config )); err != nil {
451
+ return fmt .Errorf ("Error reading Instance: %s" , err )
452
+ }
435
453
if err := d .Set ("terraform_labels" , flattenParallelstoreInstanceTerraformLabels (res ["labels" ], d , config )); err != nil {
436
454
return fmt .Errorf ("Error reading Instance: %s" , err )
437
455
}
@@ -476,6 +494,12 @@ func resourceParallelstoreInstanceUpdate(d *schema.ResourceData, meta interface{
476
494
} else if v , ok := d .GetOkExists ("directory_stripe_level" ); ! tpgresource .IsEmptyValue (reflect .ValueOf (v )) && (ok || ! reflect .DeepEqual (v , directoryStripeLevelProp )) {
477
495
obj ["directoryStripeLevel" ] = directoryStripeLevelProp
478
496
}
497
+ deploymentTypeProp , err := expandParallelstoreInstanceDeploymentType (d .Get ("deployment_type" ), d , config )
498
+ if err != nil {
499
+ return err
500
+ } else if v , ok := d .GetOkExists ("deployment_type" ); ! tpgresource .IsEmptyValue (reflect .ValueOf (v )) && (ok || ! reflect .DeepEqual (v , deploymentTypeProp )) {
501
+ obj ["deploymentType" ] = deploymentTypeProp
502
+ }
479
503
labelsProp , err := expandParallelstoreInstanceEffectiveLabels (d .Get ("effective_labels" ), d , config )
480
504
if err != nil {
481
505
return err
@@ -504,6 +528,10 @@ func resourceParallelstoreInstanceUpdate(d *schema.ResourceData, meta interface{
504
528
updateMask = append (updateMask , "directoryStripeLevel" )
505
529
}
506
530
531
+ if d .HasChange ("deployment_type" ) {
532
+ updateMask = append (updateMask , "deploymentType" )
533
+ }
534
+
507
535
if d .HasChange ("effective_labels" ) {
508
536
updateMask = append (updateMask , "labels" )
509
537
}
@@ -693,6 +721,10 @@ func flattenParallelstoreInstanceDirectoryStripeLevel(v interface{}, d *schema.R
693
721
return v
694
722
}
695
723
724
+ func flattenParallelstoreInstanceDeploymentType (v interface {}, d * schema.ResourceData , config * transport_tpg.Config ) interface {} {
725
+ return v
726
+ }
727
+
696
728
func flattenParallelstoreInstanceTerraformLabels (v interface {}, d * schema.ResourceData , config * transport_tpg.Config ) interface {} {
697
729
if v == nil {
698
730
return v
@@ -736,6 +768,10 @@ func expandParallelstoreInstanceDirectoryStripeLevel(v interface{}, d tpgresourc
736
768
return v , nil
737
769
}
738
770
771
+ func expandParallelstoreInstanceDeploymentType (v interface {}, d tpgresource.TerraformResourceData , config * transport_tpg.Config ) (interface {}, error ) {
772
+ return v , nil
773
+ }
774
+
739
775
func expandParallelstoreInstanceEffectiveLabels (v interface {}, d tpgresource.TerraformResourceData , config * transport_tpg.Config ) (map [string ]string , error ) {
740
776
if v == nil {
741
777
return map [string ]string {}, nil
0 commit comments