From 61ae78693e51158bb2fa9eb4d9b983898c685062 Mon Sep 17 00:00:00 2001 From: Radek Simko Date: Tue, 10 Oct 2017 20:12:34 +0100 Subject: [PATCH] r/kms_key: Retry getting key policy --- aws/resource_aws_kms_key.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/aws/resource_aws_kms_key.go b/aws/resource_aws_kms_key.go index 81e3bbf0c28a..a3f86df978be 100644 --- a/aws/resource_aws_kms_key.go +++ b/aws/resource_aws_kms_key.go @@ -165,14 +165,17 @@ func resourceAwsKmsKeyRead(d *schema.ResourceData, meta interface{}) error { d.Set("key_usage", metadata.KeyUsage) d.Set("is_enabled", metadata.Enabled) - p, err := conn.GetKeyPolicy(&kms.GetKeyPolicyInput{ - KeyId: metadata.KeyId, - PolicyName: aws.String("default"), + pOut, err := retryOnAwsCode("NotFoundException", func() (interface{}, error) { + return conn.GetKeyPolicy(&kms.GetKeyPolicyInput{ + KeyId: metadata.KeyId, + PolicyName: aws.String("default"), + }) }) if err != nil { return err } + p := pOut.(*kms.GetKeyPolicyOutput) policy, err := normalizeJsonString(*p.Policy) if err != nil { return errwrap.Wrapf("policy contains an invalid JSON: {{err}}", err)