provider/aws: fix cookie stickiness policy test destroys
This commit is contained in:
parent
67832f6bd0
commit
1d5c65fa86
|
@ -5,6 +5,7 @@ import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/aws/aws-sdk-go/aws"
|
"github.com/aws/aws-sdk-go/aws"
|
||||||
|
"github.com/aws/aws-sdk-go/aws/awserr"
|
||||||
"github.com/aws/aws-sdk-go/service/elb"
|
"github.com/aws/aws-sdk-go/service/elb"
|
||||||
|
|
||||||
"github.com/hashicorp/terraform/helper/resource"
|
"github.com/hashicorp/terraform/helper/resource"
|
||||||
|
@ -40,10 +41,31 @@ func TestAccAWSAppCookieStickinessPolicy_basic(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func testAccCheckAppCookieStickinessPolicyDestroy(s *terraform.State) error {
|
func testAccCheckAppCookieStickinessPolicyDestroy(s *terraform.State) error {
|
||||||
if len(s.RootModule().Resources) > 0 {
|
conn := testAccProvider.Meta().(*AWSClient).elbconn
|
||||||
return fmt.Errorf("Expected all resources to be gone, but found: %#v", s.RootModule().Resources)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
for _, rs := range s.RootModule().Resources {
|
||||||
|
if rs.Type != "aws_app_cookie_stickiness_policy" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
lbName, _, policyName := resourceAwsAppCookieStickinessPolicyParseId(
|
||||||
|
rs.Primary.ID)
|
||||||
|
out, err := conn.DescribeLoadBalancerPolicies(
|
||||||
|
&elb.DescribeLoadBalancerPoliciesInput{
|
||||||
|
LoadBalancerName: aws.String(lbName),
|
||||||
|
PolicyNames: []*string{aws.String(policyName)},
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
if ec2err, ok := err.(awserr.Error); ok && (ec2err.Code() == "PolicyNotFound" || ec2err.Code() == "LoadBalancerNotFound") {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(out.PolicyDescriptions) > 0 {
|
||||||
|
return fmt.Errorf("Policy still exists")
|
||||||
|
}
|
||||||
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,7 @@ import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/aws/aws-sdk-go/aws"
|
"github.com/aws/aws-sdk-go/aws"
|
||||||
|
"github.com/aws/aws-sdk-go/aws/awserr"
|
||||||
"github.com/aws/aws-sdk-go/service/elb"
|
"github.com/aws/aws-sdk-go/service/elb"
|
||||||
|
|
||||||
"github.com/hashicorp/terraform/helper/resource"
|
"github.com/hashicorp/terraform/helper/resource"
|
||||||
|
@ -40,8 +41,29 @@ func TestAccAWSLBCookieStickinessPolicy_basic(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func testAccCheckLBCookieStickinessPolicyDestroy(s *terraform.State) error {
|
func testAccCheckLBCookieStickinessPolicyDestroy(s *terraform.State) error {
|
||||||
if len(s.RootModule().Resources) > 0 {
|
conn := testAccProvider.Meta().(*AWSClient).elbconn
|
||||||
return fmt.Errorf("Expected all resources to be gone, but found: %#v", s.RootModule().Resources)
|
|
||||||
|
for _, rs := range s.RootModule().Resources {
|
||||||
|
if rs.Type != "aws_lb_cookie_stickiness_policy" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
lbName, _, policyName := resourceAwsLBCookieStickinessPolicyParseId(rs.Primary.ID)
|
||||||
|
out, err := conn.DescribeLoadBalancerPolicies(
|
||||||
|
&elb.DescribeLoadBalancerPoliciesInput{
|
||||||
|
LoadBalancerName: aws.String(lbName),
|
||||||
|
PolicyNames: []*string{aws.String(policyName)},
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
if ec2err, ok := err.(awserr.Error); ok && (ec2err.Code() == "PolicyNotFound" || ec2err.Code() == "LoadBalancerNotFound") {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(out.PolicyDescriptions) > 0 {
|
||||||
|
return fmt.Errorf("Policy still exists")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
|
|
Loading…
Reference in New Issue