From 3883e47902ac75f24cd046f053b42be6fcbde0f9 Mon Sep 17 00:00:00 2001 From: Greg Osuri Date: Sat, 13 Dec 2014 22:14:23 -0800 Subject: [PATCH 1/2] Fix for #664, crashed due to ig.Attachements being 0 --- builtin/providers/aws/resource_aws_internet_gateway.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/builtin/providers/aws/resource_aws_internet_gateway.go b/builtin/providers/aws/resource_aws_internet_gateway.go index 0dac15781..4618a067e 100644 --- a/builtin/providers/aws/resource_aws_internet_gateway.go +++ b/builtin/providers/aws/resource_aws_internet_gateway.go @@ -60,7 +60,11 @@ func resourceAwsInternetGatewayRead(d *schema.ResourceData, meta interface{}) er } ig := igRaw.(*ec2.InternetGateway) - d.Set("vpc_id", ig.Attachments[0].VpcId) + if len(ig.Attachments) == 0 { + d.SetId("") + } else { + d.Set("vpc_id", ig.Attachments[0].VpcId) + } return nil } From 9b9d14758594daa04c119b8dd6b1ba66a2f37672 Mon Sep 17 00:00:00 2001 From: Greg Osuri Date: Sun, 14 Dec 2014 14:05:38 -0800 Subject: [PATCH 2/2] Setting the VPC id to blank for unattached igws --- builtin/providers/aws/resource_aws_internet_gateway.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/builtin/providers/aws/resource_aws_internet_gateway.go b/builtin/providers/aws/resource_aws_internet_gateway.go index 4618a067e..14f8432b4 100644 --- a/builtin/providers/aws/resource_aws_internet_gateway.go +++ b/builtin/providers/aws/resource_aws_internet_gateway.go @@ -61,7 +61,8 @@ func resourceAwsInternetGatewayRead(d *schema.ResourceData, meta interface{}) er ig := igRaw.(*ec2.InternetGateway) if len(ig.Attachments) == 0 { - d.SetId("") + // Gateway exists but not attached to the VPC + d.Set("vpc_id", "") } else { d.Set("vpc_id", ig.Attachments[0].VpcId) }