From fb1a82dbd76efce85641dc9bef2c9ad08b6b390b Mon Sep 17 00:00:00 2001 From: Paul Stack Date: Fri, 22 Apr 2016 01:13:04 +0100 Subject: [PATCH] provider/aws: Refresh state on Directory Service not found (#6294) When a directory service was not found, Terraform was panicking due to `dir := out.DirectoryDescriptions[0]`. The AWS API doesn't throw an Error in this case. IT just return s0 results. Therefore, we should check for 0 results in the return and remove the directory from the state --- .../aws/resource_aws_directory_service_directory.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/builtin/providers/aws/resource_aws_directory_service_directory.go b/builtin/providers/aws/resource_aws_directory_service_directory.go index 4f241f48a2..711617a60e 100644 --- a/builtin/providers/aws/resource_aws_directory_service_directory.go +++ b/builtin/providers/aws/resource_aws_directory_service_directory.go @@ -401,6 +401,13 @@ func resourceAwsDirectoryServiceDirectoryRead(d *schema.ResourceData, meta inter out, err := dsconn.DescribeDirectories(&input) if err != nil { return err + + } + + if len(out.DirectoryDescriptions) == 0 { + log.Printf("[WARN] Directory %s not found", d.Id()) + d.SetId("") + return nil } dir := out.DirectoryDescriptions[0]