diff --git a/builtin/providers/aws/resource_aws_route.go b/builtin/providers/aws/resource_aws_route.go index f6e0a85896ef..669ca0f0a797 100644 --- a/builtin/providers/aws/resource_aws_route.go +++ b/builtin/providers/aws/resource_aws_route.go @@ -179,7 +179,18 @@ func resourceAwsRouteCreate(d *schema.ResourceData, meta interface{}) error { return fmt.Errorf("Error creating route: %s", err) } - route, err := findResourceRoute(conn, d.Get("route_table_id").(string), d.Get("destination_cidr_block").(string)) + var route *ec2.Route + err = resource.Retry(2*time.Minute, func() *resource.RetryError { + route, err = findResourceRoute(conn, d.Get("route_table_id").(string), d.Get("destination_cidr_block").(string)) + + if err != nil { + log.Print("[DEBUG] Attempting to find route in route table %s again", d.Get("route_table_id").(string)) + return resource.RetryableError(err) + } + + return nil + }) + if err != nil { return err }