From 0ff62016eeca26bcb5e6b21b7cb53f8d3a4434e7 Mon Sep 17 00:00:00 2001 From: Armon Dadgar Date: Tue, 9 Dec 2014 17:11:50 -0800 Subject: [PATCH] provider/aws: Fixing ASG handling of not found --- .../aws/resource_aws_autoscaling_group.go | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/builtin/providers/aws/resource_aws_autoscaling_group.go b/builtin/providers/aws/resource_aws_autoscaling_group.go index 0e6c8a8ad..4d5e32024 100644 --- a/builtin/providers/aws/resource_aws_autoscaling_group.go +++ b/builtin/providers/aws/resource_aws_autoscaling_group.go @@ -158,7 +158,7 @@ func resourceAwsAutoscalingGroupCreate(d *schema.ResourceData, meta interface{}) autoScalingGroupOpts.VPCZoneIdentifier = expandStringList( v.(*schema.Set).List()) } - + if v, ok := d.GetOk("termination_policies"); ok { autoScalingGroupOpts.TerminationPolicies = expandStringList( v.(*schema.Set).List()) @@ -296,17 +296,16 @@ func getAwsAutoscalingGroup( return nil, fmt.Errorf("Error retrieving AutoScaling groups: %s", err) } - // Verify AWS returned our sg - if len(describeGroups.AutoScalingGroups) != 1 || - describeGroups.AutoScalingGroups[0].Name != d.Id() { - if err != nil { - return nil, fmt.Errorf( - "Unable to find AutoScaling group: %#v", - describeGroups.AutoScalingGroups) + // Search for the autoscaling group + for idx, asc := range describeGroups.AutoScalingGroups { + if asc.Name == d.Id() { + return &describeGroups.AutoScalingGroups[idx], nil } } - return &describeGroups.AutoScalingGroups[0], nil + // ASG not found + d.SetId("") + return nil, nil } func resourceAwsAutoscalingGroupDrain(d *schema.ResourceData, meta interface{}) error {