@@ -66,11 +66,12 @@ func ResourceSecret() *schema.Resource {
66
66
ValidateFunc : validSecretNamePrefix ,
67
67
},
68
68
"policy" : {
69
- Type : schema .TypeString ,
70
- Optional : true ,
71
- Computed : true ,
72
- ValidateFunc : validation .StringIsJSON ,
73
- DiffSuppressFunc : verify .SuppressEquivalentPolicyDiffs ,
69
+ Type : schema .TypeString ,
70
+ Optional : true ,
71
+ Computed : true ,
72
+ ValidateFunc : validation .StringIsJSON ,
73
+ DiffSuppressFunc : verify .SuppressEquivalentPolicyDiffs ,
74
+ DiffSuppressOnRefresh : true ,
74
75
StateFunc : func (v interface {}) string {
75
76
json , _ := structure .NormalizeJsonString (v )
76
77
return json
@@ -203,7 +204,6 @@ func resourceSecretCreate(d *schema.ResourceData, meta interface{}) error {
203
204
204
205
if v , ok := d .GetOk ("policy" ); ok && v .(string ) != "" && v .(string ) != "{}" {
205
206
policy , err := structure .NormalizeJsonString (v .(string ))
206
-
207
207
if err != nil {
208
208
return fmt .Errorf ("policy (%s) is invalid JSON: %w" , v .(string ), err )
209
209
}
@@ -299,7 +299,6 @@ func resourceSecretRead(d *schema.ResourceData, meta interface{}) error {
299
299
return fmt .Errorf ("reading Secrets Manager Secret (%s) policy: %w" , d .Id (), err )
300
300
} else if v := output .ResourcePolicy ; v != nil {
301
301
policyToSet , err := verify .PolicyToSet (d .Get ("policy" ).(string ), aws .StringValue (v ))
302
-
303
302
if err != nil {
304
303
return err
305
304
}
@@ -378,7 +377,6 @@ func resourceSecretUpdate(d *schema.ResourceData, meta interface{}) error {
378
377
if d .HasChange ("policy" ) {
379
378
if v , ok := d .GetOk ("policy" ); ok && v .(string ) != "" && v .(string ) != "{}" {
380
379
policy , err := structure .NormalizeJsonString (v .(string ))
381
-
382
380
if err != nil {
383
381
return fmt .Errorf ("policy contains an invalid JSON: %w" , err )
384
382
}
0 commit comments