From e865c74b38dbbeebc4c3fecf7e28ffb0678ffc0e Mon Sep 17 00:00:00 2001 From: Graham Davison Date: Fri, 4 Oct 2024 14:42:38 -0700 Subject: [PATCH 1/2] Fix issue with `aws_spot_instance_request` overwriting shared schema elements --- internal/service/ec2/ec2_spot_instance_request.go | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/internal/service/ec2/ec2_spot_instance_request.go b/internal/service/ec2/ec2_spot_instance_request.go index 03845f7ddaa0..463b0b56a217 100644 --- a/internal/service/ec2/ec2_spot_instance_request.go +++ b/internal/service/ec2/ec2_spot_instance_request.go @@ -57,10 +57,13 @@ func resourceSpotInstanceRequest() *schema.Resource { continue } // tags_all is Optional+Computed. - if k == names.AttrTags || k == names.AttrTagsAll { + if k == names.AttrTags || k == names.AttrTagsAll || k == "volume_tags" { continue } - v.ForceNew = true + // Copy-on-write + x := *v + x.ForceNew = true + s[k] = &x } // Remove attributes added for spot instances. @@ -130,11 +133,6 @@ func resourceSpotInstanceRequest() *schema.Resource { ValidateFunc: validation.IsRFC3339Time, Computed: true, } - s["volume_tags"] = &schema.Schema{ - Type: schema.TypeMap, - Optional: true, - Elem: &schema.Schema{Type: schema.TypeString}, - } s["wait_for_fulfillment"] = &schema.Schema{ Type: schema.TypeBool, Optional: true, From a19eba1c1001553a887054f246e7d457a202ed65 Mon Sep 17 00:00:00 2001 From: Graham Davison Date: Fri, 4 Oct 2024 16:01:57 -0700 Subject: [PATCH 2/2] Semgrep fix --- internal/service/ec2/ec2_spot_instance_request.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/service/ec2/ec2_spot_instance_request.go b/internal/service/ec2/ec2_spot_instance_request.go index 463b0b56a217..1f9cf11ea092 100644 --- a/internal/service/ec2/ec2_spot_instance_request.go +++ b/internal/service/ec2/ec2_spot_instance_request.go @@ -61,7 +61,7 @@ func resourceSpotInstanceRequest() *schema.Resource { continue } // Copy-on-write - x := *v + x := *v // nosemgrep:ci.semgrep.aws.prefer-pointer-conversion-assignment x.ForceNew = true s[k] = &x }