From 408515e742852167c007bb2a0663b888f2d1bbd9 Mon Sep 17 00:00:00 2001 From: fomichevmi <59839128+fomichevmi@users.noreply.github.com> Date: Wed, 5 Jan 2022 16:09:27 +0100 Subject: [PATCH] Fix updating Security Group error Fix for #21628 --- internal/service/ec2/security_group.go | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/internal/service/ec2/security_group.go b/internal/service/ec2/security_group.go index aea4212c5fd0..f702c03fef89 100644 --- a/internal/service/ec2/security_group.go +++ b/internal/service/ec2/security_group.go @@ -405,7 +405,23 @@ func resourceSecurityGroupRead(d *schema.ResourceData, meta interface{}) error { func resourceSecurityGroupUpdate(d *schema.ResourceData, meta interface{}) error { conn := meta.(*conns.AWSClient).EC2Conn - group, err := FindSecurityGroupByID(conn, d.Id()) + var group *ec2.SecurityGroup + var err error + err = resource.Retry(15 * time.Second, func() *resource.RetryError { + group, err = FindSecurityGroupByID(conn, d.Id()) + if err != nil { + switch err.(type) { + case *resource.NotFoundError: + return resource.RetryableError(err) + default: + return resource.NonRetryableError(err) + } + } + return nil + }) + if tfresource.TimedOut(err) { + group, err = FindSecurityGroupByID(conn, d.Id()) + } if err != nil { return fmt.Errorf("error updating Security Group (%s): %w", d.Id(), err) }