providers/aws: tests passing, compiles
This commit is contained in:
parent
71782c57b3
commit
c5d6df692d
|
@ -13,9 +13,9 @@ import (
|
|||
)
|
||||
|
||||
func resource_aws_autoscaling_group_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
autoscalingconn := p.autoscalingconn
|
||||
|
||||
|
@ -81,9 +81,6 @@ func resource_aws_autoscaling_group_create(
|
|||
}
|
||||
|
||||
rs.ID = rs.Attributes["name"]
|
||||
rs.Dependencies = []terraform.ResourceDependency{
|
||||
terraform.ResourceDependency{ID: rs.Attributes["launch_configuration"]},
|
||||
}
|
||||
|
||||
log.Printf("[INFO] AutoScaling Group ID: %s", rs.ID)
|
||||
|
||||
|
@ -96,9 +93,9 @@ func resource_aws_autoscaling_group_create(
|
|||
}
|
||||
|
||||
func resource_aws_autoscaling_group_update(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
autoscalingconn := p.autoscalingconn
|
||||
rs := s.MergeDiff(d)
|
||||
|
@ -141,7 +138,7 @@ func resource_aws_autoscaling_group_update(
|
|||
}
|
||||
|
||||
func resource_aws_autoscaling_group_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
autoscalingconn := p.autoscalingconn
|
||||
|
@ -173,8 +170,8 @@ func resource_aws_autoscaling_group_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_autoscaling_group_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
autoscalingconn := p.autoscalingconn
|
||||
|
||||
|
@ -188,7 +185,7 @@ func resource_aws_autoscaling_group_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_autoscaling_group_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
|
||||
|
@ -223,8 +220,8 @@ func resource_aws_autoscaling_group_diff(
|
|||
}
|
||||
|
||||
func resource_aws_autoscaling_group_update_state(
|
||||
s *terraform.ResourceState,
|
||||
g *autoscaling.AutoScalingGroup) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
g *autoscaling.AutoScalingGroup) (*terraform.InstanceState, error) {
|
||||
|
||||
s.Attributes["min_size"] = strconv.Itoa(g.MinSize)
|
||||
s.Attributes["max_size"] = strconv.Itoa(g.MaxSize)
|
||||
|
|
|
@ -65,7 +65,7 @@ func TestAccAWSAutoScalingGroupWithLoadBalancer(t *testing.T) {
|
|||
func testAccCheckAWSAutoScalingGroupDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.autoscalingconn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_autoscaling_group" {
|
||||
continue
|
||||
}
|
||||
|
@ -73,12 +73,12 @@ func testAccCheckAWSAutoScalingGroupDestroy(s *terraform.State) error {
|
|||
// Try to find the Group
|
||||
describeGroups, err := conn.DescribeAutoScalingGroups(
|
||||
&autoscaling.DescribeAutoScalingGroups{
|
||||
Names: []string{rs.ID},
|
||||
Names: []string{rs.Primary.ID},
|
||||
})
|
||||
|
||||
if err == nil {
|
||||
if len(describeGroups.AutoScalingGroups) != 0 &&
|
||||
describeGroups.AutoScalingGroups[0].Name == rs.ID {
|
||||
describeGroups.AutoScalingGroups[0].Name == rs.Primary.ID {
|
||||
return fmt.Errorf("AutoScaling Group still exists")
|
||||
}
|
||||
}
|
||||
|
@ -146,19 +146,19 @@ func testAccCheckAWSAutoScalingGroupAttributesLoadBalancer(group *autoscaling.Au
|
|||
|
||||
func testAccCheckAWSAutoScalingGroupExists(n string, group *autoscaling.AutoScalingGroup) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No AutoScaling Group ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.autoscalingconn
|
||||
|
||||
describeOpts := autoscaling.DescribeAutoScalingGroups{
|
||||
Names: []string{rs.ID},
|
||||
Names: []string{rs.Primary.ID},
|
||||
}
|
||||
describeGroups, err := conn.DescribeAutoScalingGroups(&describeOpts)
|
||||
|
||||
|
@ -167,7 +167,7 @@ func testAccCheckAWSAutoScalingGroupExists(n string, group *autoscaling.AutoScal
|
|||
}
|
||||
|
||||
if len(describeGroups.AutoScalingGroups) != 1 ||
|
||||
describeGroups.AutoScalingGroups[0].Name != rs.ID {
|
||||
describeGroups.AutoScalingGroups[0].Name != rs.Primary.ID {
|
||||
return fmt.Errorf("AutoScaling Group not found")
|
||||
}
|
||||
|
||||
|
|
|
@ -16,9 +16,9 @@ import (
|
|||
)
|
||||
|
||||
func resource_aws_db_instance_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
conn := p.rdsconn
|
||||
|
||||
|
@ -136,14 +136,14 @@ func resource_aws_db_instance_create(
|
|||
}
|
||||
|
||||
func resource_aws_db_instance_update(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
panic("Cannot update DB")
|
||||
}
|
||||
|
||||
func resource_aws_db_instance_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
conn := p.rdsconn
|
||||
|
@ -184,8 +184,8 @@ func resource_aws_db_instance_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_db_instance_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
conn := p.rdsconn
|
||||
|
||||
|
@ -199,7 +199,7 @@ func resource_aws_db_instance_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_db_instance_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
|
||||
|
@ -247,8 +247,8 @@ func resource_aws_db_instance_diff(
|
|||
}
|
||||
|
||||
func resource_aws_db_instance_update_state(
|
||||
s *terraform.ResourceState,
|
||||
v *rds.DBInstance) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
v *rds.DBInstance) (*terraform.InstanceState, error) {
|
||||
|
||||
s.Attributes["address"] = v.Address
|
||||
s.Attributes["allocated_storage"] = strconv.Itoa(v.AllocatedStorage)
|
||||
|
@ -279,13 +279,6 @@ func resource_aws_db_instance_update_state(
|
|||
s.Attributes[k] = v
|
||||
}
|
||||
|
||||
// We depend on any security groups attached
|
||||
for _, g := range v.DBSecurityGroupNames {
|
||||
s.Dependencies = []terraform.ResourceDependency{
|
||||
terraform.ResourceDependency{ID: g},
|
||||
}
|
||||
}
|
||||
|
||||
return s, nil
|
||||
}
|
||||
|
||||
|
|
|
@ -52,7 +52,7 @@ func TestAccAWSDBInstance(t *testing.T) {
|
|||
func testAccCheckAWSDBInstanceDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.rdsconn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_db_instance" {
|
||||
continue
|
||||
}
|
||||
|
@ -60,12 +60,12 @@ func testAccCheckAWSDBInstanceDestroy(s *terraform.State) error {
|
|||
// Try to find the Group
|
||||
resp, err := conn.DescribeDBInstances(
|
||||
&rds.DescribeDBInstances{
|
||||
DBInstanceIdentifier: rs.ID,
|
||||
DBInstanceIdentifier: rs.Primary.ID,
|
||||
})
|
||||
|
||||
if err == nil {
|
||||
if len(resp.DBInstances) != 0 &&
|
||||
resp.DBInstances[0].DBInstanceIdentifier == rs.ID {
|
||||
resp.DBInstances[0].DBInstanceIdentifier == rs.Primary.ID {
|
||||
return fmt.Errorf("DB Instance still exists")
|
||||
}
|
||||
}
|
||||
|
@ -104,19 +104,19 @@ func testAccCheckAWSDBInstanceAttributes(v *rds.DBInstance) resource.TestCheckFu
|
|||
|
||||
func testAccCheckAWSDBInstanceExists(n string, v *rds.DBInstance) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No DB Instance ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.rdsconn
|
||||
|
||||
opts := rds.DescribeDBInstances{
|
||||
DBInstanceIdentifier: rs.ID,
|
||||
DBInstanceIdentifier: rs.Primary.ID,
|
||||
}
|
||||
|
||||
resp, err := conn.DescribeDBInstances(&opts)
|
||||
|
@ -126,7 +126,7 @@ func testAccCheckAWSDBInstanceExists(n string, v *rds.DBInstance) resource.TestC
|
|||
}
|
||||
|
||||
if len(resp.DBInstances) != 1 ||
|
||||
resp.DBInstances[0].DBInstanceIdentifier != rs.ID {
|
||||
resp.DBInstances[0].DBInstanceIdentifier != rs.Primary.ID {
|
||||
return fmt.Errorf("DB Instance not found")
|
||||
}
|
||||
|
||||
|
|
|
@ -15,9 +15,9 @@ import (
|
|||
)
|
||||
|
||||
func resource_aws_db_security_group_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
conn := p.rdsconn
|
||||
|
||||
|
@ -85,14 +85,14 @@ func resource_aws_db_security_group_create(
|
|||
}
|
||||
|
||||
func resource_aws_db_security_group_update(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
panic("Cannot update DB security group")
|
||||
}
|
||||
|
||||
func resource_aws_db_security_group_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
conn := p.rdsconn
|
||||
|
@ -116,8 +116,8 @@ func resource_aws_db_security_group_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_db_security_group_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
conn := p.rdsconn
|
||||
|
||||
|
@ -131,7 +131,7 @@ func resource_aws_db_security_group_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_db_security_group_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
|
||||
|
@ -152,8 +152,8 @@ func resource_aws_db_security_group_diff(
|
|||
}
|
||||
|
||||
func resource_aws_db_security_group_update_state(
|
||||
s *terraform.ResourceState,
|
||||
v *rds.DBSecurityGroup) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
v *rds.DBSecurityGroup) (*terraform.InstanceState, error) {
|
||||
|
||||
s.Attributes["name"] = v.Name
|
||||
s.Attributes["description"] = v.Description
|
||||
|
|
|
@ -39,7 +39,7 @@ func TestAccAWSDBSecurityGroup(t *testing.T) {
|
|||
func testAccCheckAWSDBSecurityGroupDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.rdsconn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_db_security_group" {
|
||||
continue
|
||||
}
|
||||
|
@ -47,12 +47,12 @@ func testAccCheckAWSDBSecurityGroupDestroy(s *terraform.State) error {
|
|||
// Try to find the Group
|
||||
resp, err := conn.DescribeDBSecurityGroups(
|
||||
&rds.DescribeDBSecurityGroups{
|
||||
DBSecurityGroupName: rs.ID,
|
||||
DBSecurityGroupName: rs.Primary.ID,
|
||||
})
|
||||
|
||||
if err == nil {
|
||||
if len(resp.DBSecurityGroups) != 0 &&
|
||||
resp.DBSecurityGroups[0].Name == rs.ID {
|
||||
resp.DBSecurityGroups[0].Name == rs.Primary.ID {
|
||||
return fmt.Errorf("DB Security Group still exists")
|
||||
}
|
||||
}
|
||||
|
@ -98,19 +98,19 @@ func testAccCheckAWSDBSecurityGroupAttributes(group *rds.DBSecurityGroup) resour
|
|||
|
||||
func testAccCheckAWSDBSecurityGroupExists(n string, v *rds.DBSecurityGroup) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No DB Security Group ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.rdsconn
|
||||
|
||||
opts := rds.DescribeDBSecurityGroups{
|
||||
DBSecurityGroupName: rs.ID,
|
||||
DBSecurityGroupName: rs.Primary.ID,
|
||||
}
|
||||
|
||||
resp, err := conn.DescribeDBSecurityGroups(&opts)
|
||||
|
@ -120,7 +120,7 @@ func testAccCheckAWSDBSecurityGroupExists(n string, v *rds.DBSecurityGroup) reso
|
|||
}
|
||||
|
||||
if len(resp.DBSecurityGroups) != 1 ||
|
||||
resp.DBSecurityGroups[0].Name != rs.ID {
|
||||
resp.DBSecurityGroups[0].Name != rs.Primary.ID {
|
||||
return fmt.Errorf("DB Security Group not found")
|
||||
}
|
||||
|
||||
|
|
|
@ -59,16 +59,16 @@ func TestAccAWSEIP_instance(t *testing.T) {
|
|||
func testAccCheckAWSEIPDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.ec2conn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_eip" {
|
||||
continue
|
||||
}
|
||||
|
||||
describe, err := conn.Addresses([]string{rs.ID}, []string{}, nil)
|
||||
describe, err := conn.Addresses([]string{rs.Primary.ID}, []string{}, nil)
|
||||
|
||||
if err == nil {
|
||||
if len(describe.Addresses) != 0 &&
|
||||
describe.Addresses[0].PublicIp == rs.ID {
|
||||
describe.Addresses[0].PublicIp == rs.Primary.ID {
|
||||
return fmt.Errorf("EIP still exists")
|
||||
}
|
||||
}
|
||||
|
@ -103,37 +103,37 @@ func testAccCheckAWSEIPAttributes(conf *ec2.Address) resource.TestCheckFunc {
|
|||
|
||||
func testAccCheckAWSEIPExists(n string, res *ec2.Address) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No EIP ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.ec2conn
|
||||
|
||||
if strings.Contains(rs.ID, "eipalloc") {
|
||||
describe, err := conn.Addresses([]string{}, []string{rs.ID}, nil)
|
||||
if strings.Contains(rs.Primary.ID, "eipalloc") {
|
||||
describe, err := conn.Addresses([]string{}, []string{rs.Primary.ID}, nil)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(describe.Addresses) != 1 ||
|
||||
describe.Addresses[0].AllocationId != rs.ID {
|
||||
describe.Addresses[0].AllocationId != rs.Primary.ID {
|
||||
return fmt.Errorf("EIP not found")
|
||||
}
|
||||
*res = describe.Addresses[0]
|
||||
|
||||
} else {
|
||||
describe, err := conn.Addresses([]string{rs.ID}, []string{}, nil)
|
||||
describe, err := conn.Addresses([]string{rs.Primary.ID}, []string{}, nil)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(describe.Addresses) != 1 ||
|
||||
describe.Addresses[0].PublicIp != rs.ID {
|
||||
describe.Addresses[0].PublicIp != rs.Primary.ID {
|
||||
return fmt.Errorf("EIP not found")
|
||||
}
|
||||
*res = describe.Addresses[0]
|
||||
|
|
|
@ -13,9 +13,9 @@ import (
|
|||
)
|
||||
|
||||
func resource_aws_elb_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
elbconn := p.elbconn
|
||||
|
||||
|
@ -124,9 +124,9 @@ func resource_aws_elb_create(
|
|||
}
|
||||
|
||||
func resource_aws_elb_update(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
elbconn := p.elbconn
|
||||
|
||||
|
@ -214,7 +214,7 @@ func resource_aws_elb_update(
|
|||
}
|
||||
|
||||
func resource_aws_elb_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
elbconn := p.elbconn
|
||||
|
@ -235,8 +235,8 @@ func resource_aws_elb_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_elb_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
elbconn := p.elbconn
|
||||
|
||||
|
@ -249,7 +249,7 @@ func resource_aws_elb_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_elb_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
|
||||
|
@ -273,8 +273,8 @@ func resource_aws_elb_diff(
|
|||
}
|
||||
|
||||
func resource_aws_elb_update_state(
|
||||
s *terraform.ResourceState,
|
||||
balancer *elb.LoadBalancer) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
balancer *elb.LoadBalancer) (*terraform.InstanceState, error) {
|
||||
|
||||
s.Attributes["name"] = balancer.LoadBalancerName
|
||||
s.Attributes["dns_name"] = balancer.DNSName
|
||||
|
|
|
@ -112,18 +112,18 @@ func TestAccAWSELB_HealthCheck(t *testing.T) {
|
|||
func testAccCheckAWSELBDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.elbconn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_elb" {
|
||||
continue
|
||||
}
|
||||
|
||||
describe, err := conn.DescribeLoadBalancers(&elb.DescribeLoadBalancer{
|
||||
Names: []string{rs.ID},
|
||||
Names: []string{rs.Primary.ID},
|
||||
})
|
||||
|
||||
if err == nil {
|
||||
if len(describe.LoadBalancers) != 0 &&
|
||||
describe.LoadBalancers[0].LoadBalancerName == rs.ID {
|
||||
describe.LoadBalancers[0].LoadBalancerName == rs.Primary.ID {
|
||||
return fmt.Errorf("ELB still exists")
|
||||
}
|
||||
}
|
||||
|
@ -209,19 +209,19 @@ func testAccCheckAWSELBAttributesHealthCheck(conf *elb.LoadBalancer) resource.Te
|
|||
|
||||
func testAccCheckAWSELBExists(n string, res *elb.LoadBalancer) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No ELB ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.elbconn
|
||||
|
||||
describe, err := conn.DescribeLoadBalancers(&elb.DescribeLoadBalancer{
|
||||
Names: []string{rs.ID},
|
||||
Names: []string{rs.Primary.ID},
|
||||
})
|
||||
|
||||
if err != nil {
|
||||
|
@ -229,7 +229,7 @@ func testAccCheckAWSELBExists(n string, res *elb.LoadBalancer) resource.TestChec
|
|||
}
|
||||
|
||||
if len(describe.LoadBalancers) != 1 ||
|
||||
describe.LoadBalancers[0].LoadBalancerName != rs.ID {
|
||||
describe.LoadBalancers[0].LoadBalancerName != rs.Primary.ID {
|
||||
return fmt.Errorf("ELB not found")
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,6 @@ import (
|
|||
"github.com/hashicorp/terraform/helper/hashcode"
|
||||
"github.com/hashicorp/terraform/helper/resource"
|
||||
"github.com/hashicorp/terraform/helper/schema"
|
||||
"github.com/hashicorp/terraform/terraform"
|
||||
"github.com/mitchellh/goamz/ec2"
|
||||
)
|
||||
|
||||
|
@ -315,8 +314,6 @@ func resourceAwsInstanceRead(d *schema.ResourceData, meta interface{}) error {
|
|||
d.Set("subnet_id", instance.SubnetId)
|
||||
d.Set("ebs_optimized", instance.EbsOptimized)
|
||||
|
||||
var deps []terraform.ResourceDependency
|
||||
|
||||
// Determine whether we're referring to security groups with
|
||||
// IDs or names. We use a heuristic to figure this out. By default,
|
||||
// we use IDs if we're in a VPC. However, if we previously had an
|
||||
|
@ -343,17 +340,9 @@ func resourceAwsInstanceRead(d *schema.ResourceData, meta interface{}) error {
|
|||
} else {
|
||||
sgs[i] = sg.Name
|
||||
}
|
||||
|
||||
deps = append(deps, terraform.ResourceDependency{ID: sg.Id})
|
||||
}
|
||||
d.Set("security_groups", sgs)
|
||||
|
||||
// If we're in a VPC, we depend on the subnet
|
||||
if instance.SubnetId != "" {
|
||||
deps = append(deps, terraform.ResourceDependency{ID: instance.SubnetId})
|
||||
}
|
||||
|
||||
d.SetDependencies(deps)
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -125,14 +125,14 @@ func TestAccAWSInstance_vpc(t *testing.T) {
|
|||
func testAccCheckInstanceDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.ec2conn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_instance" {
|
||||
continue
|
||||
}
|
||||
|
||||
// Try to find the resource
|
||||
resp, err := conn.Instances(
|
||||
[]string{rs.ID}, ec2.NewFilter())
|
||||
[]string{rs.Primary.ID}, ec2.NewFilter())
|
||||
if err == nil {
|
||||
if len(resp.Reservations) > 0 {
|
||||
return fmt.Errorf("still exist.")
|
||||
|
@ -156,18 +156,18 @@ func testAccCheckInstanceDestroy(s *terraform.State) error {
|
|||
|
||||
func testAccCheckInstanceExists(n string, i *ec2.Instance) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.ec2conn
|
||||
resp, err := conn.Instances(
|
||||
[]string{rs.ID}, ec2.NewFilter())
|
||||
[]string{rs.Primary.ID}, ec2.NewFilter())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
@ -12,9 +12,9 @@ import (
|
|||
)
|
||||
|
||||
func resource_aws_internet_gateway_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -35,9 +35,9 @@ func resource_aws_internet_gateway_create(
|
|||
}
|
||||
|
||||
func resource_aws_internet_gateway_update(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -70,7 +70,7 @@ func resource_aws_internet_gateway_update(
|
|||
}
|
||||
|
||||
func resource_aws_internet_gateway_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
@ -108,8 +108,8 @@ func resource_aws_internet_gateway_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_internet_gateway_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -126,7 +126,7 @@ func resource_aws_internet_gateway_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_internet_gateway_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
b := &diff.ResourceBuilder{
|
||||
|
@ -140,7 +140,7 @@ func resource_aws_internet_gateway_diff(
|
|||
|
||||
func resource_aws_internet_gateway_attach(
|
||||
ec2conn *ec2.EC2,
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
vpcId string) error {
|
||||
log.Printf(
|
||||
"[INFO] Attaching Internet Gateway '%s' to VPC '%s'",
|
||||
|
@ -170,7 +170,7 @@ func resource_aws_internet_gateway_attach(
|
|||
|
||||
func resource_aws_internet_gateway_detach(
|
||||
ec2conn *ec2.EC2,
|
||||
s *terraform.ResourceState) error {
|
||||
s *terraform.InstanceState) error {
|
||||
if s.Attributes["vpc_id"] == "" {
|
||||
return nil
|
||||
}
|
||||
|
@ -222,15 +222,8 @@ func resource_aws_internet_gateway_detach(
|
|||
}
|
||||
|
||||
func resource_aws_internet_gateway_update_state(
|
||||
s *terraform.ResourceState,
|
||||
ig *ec2.InternetGateway) (*terraform.ResourceState, error) {
|
||||
if s.Attributes["vpc_id"] != "" {
|
||||
// We belong to a VPC
|
||||
s.Dependencies = []terraform.ResourceDependency{
|
||||
terraform.ResourceDependency{ID: s.Attributes["vpc_id"]},
|
||||
}
|
||||
}
|
||||
|
||||
s *terraform.InstanceState,
|
||||
ig *ec2.InternetGateway) (*terraform.InstanceState, error) {
|
||||
return s, nil
|
||||
}
|
||||
|
||||
|
|
|
@ -57,14 +57,14 @@ func TestAccAWSInternetGateway(t *testing.T) {
|
|||
func testAccCheckInternetGatewayDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.ec2conn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_internet_gateway" {
|
||||
continue
|
||||
}
|
||||
|
||||
// Try to find the resource
|
||||
resp, err := conn.DescribeInternetGateways(
|
||||
[]string{rs.ID}, ec2.NewFilter())
|
||||
[]string{rs.Primary.ID}, ec2.NewFilter())
|
||||
if err == nil {
|
||||
if len(resp.InternetGateways) > 0 {
|
||||
return fmt.Errorf("still exist.")
|
||||
|
@ -88,18 +88,18 @@ func testAccCheckInternetGatewayDestroy(s *terraform.State) error {
|
|||
|
||||
func testAccCheckInternetGatewayExists(n string, ig *ec2.InternetGateway) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.ec2conn
|
||||
resp, err := conn.DescribeInternetGateways(
|
||||
[]string{rs.ID}, ec2.NewFilter())
|
||||
[]string{rs.Primary.ID}, ec2.NewFilter())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
@ -12,9 +12,9 @@ import (
|
|||
)
|
||||
|
||||
func resource_aws_launch_configuration_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
autoscalingconn := p.autoscalingconn
|
||||
|
||||
|
@ -75,14 +75,14 @@ func resource_aws_launch_configuration_create(
|
|||
}
|
||||
|
||||
func resource_aws_launch_configuration_update(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
panic("Update for AWS Launch Configuration is not supported")
|
||||
}
|
||||
|
||||
func resource_aws_launch_configuration_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
autoscalingconn := p.autoscalingconn
|
||||
|
@ -103,8 +103,8 @@ func resource_aws_launch_configuration_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_launch_configuration_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
autoscalingconn := p.autoscalingconn
|
||||
|
||||
|
@ -118,7 +118,7 @@ func resource_aws_launch_configuration_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_launch_configuration_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
|
||||
|
@ -142,8 +142,8 @@ func resource_aws_launch_configuration_diff(
|
|||
}
|
||||
|
||||
func resource_aws_launch_configuration_update_state(
|
||||
s *terraform.ResourceState,
|
||||
lc *autoscaling.LaunchConfiguration) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
lc *autoscaling.LaunchConfiguration) (*terraform.InstanceState, error) {
|
||||
|
||||
s.Attributes["image_id"] = lc.ImageId
|
||||
s.Attributes["instance_type"] = lc.InstanceType
|
||||
|
|
|
@ -40,19 +40,19 @@ func TestAccAWSLaunchConfiguration(t *testing.T) {
|
|||
func testAccCheckAWSLaunchConfigurationDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.autoscalingconn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_launch_configuration" {
|
||||
continue
|
||||
}
|
||||
|
||||
describe, err := conn.DescribeLaunchConfigurations(
|
||||
&autoscaling.DescribeLaunchConfigurations{
|
||||
Names: []string{rs.ID},
|
||||
Names: []string{rs.Primary.ID},
|
||||
})
|
||||
|
||||
if err == nil {
|
||||
if len(describe.LaunchConfigurations) != 0 &&
|
||||
describe.LaunchConfigurations[0].Name == rs.ID {
|
||||
describe.LaunchConfigurations[0].Name == rs.Primary.ID {
|
||||
return fmt.Errorf("Launch Configuration still exists")
|
||||
}
|
||||
}
|
||||
|
@ -94,19 +94,19 @@ func testAccCheckAWSLaunchConfigurationAttributes(conf *autoscaling.LaunchConfig
|
|||
|
||||
func testAccCheckAWSLaunchConfigurationExists(n string, res *autoscaling.LaunchConfiguration) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No Launch Configuration ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.autoscalingconn
|
||||
|
||||
describeOpts := autoscaling.DescribeLaunchConfigurations{
|
||||
Names: []string{rs.ID},
|
||||
Names: []string{rs.Primary.ID},
|
||||
}
|
||||
describe, err := conn.DescribeLaunchConfigurations(&describeOpts)
|
||||
|
||||
|
@ -115,7 +115,7 @@ func testAccCheckAWSLaunchConfigurationExists(n string, res *autoscaling.LaunchC
|
|||
}
|
||||
|
||||
if len(describe.LaunchConfigurations) != 1 ||
|
||||
describe.LaunchConfigurations[0].Name != rs.ID {
|
||||
describe.LaunchConfigurations[0].Name != rs.Primary.ID {
|
||||
return fmt.Errorf("Launch Configuration Group not found")
|
||||
}
|
||||
|
||||
|
|
|
@ -28,9 +28,9 @@ func resource_aws_r53_record_validation() *config.Validator {
|
|||
}
|
||||
|
||||
func resource_aws_r53_record_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
conn := p.route53
|
||||
|
||||
|
@ -87,9 +87,6 @@ func resource_aws_r53_record_create(
|
|||
|
||||
// Generate an ID
|
||||
rs.ID = fmt.Sprintf("%s_%s_%s", zone, rs.Attributes["name"], rs.Attributes["type"])
|
||||
rs.Dependencies = []terraform.ResourceDependency{
|
||||
terraform.ResourceDependency{ID: zone},
|
||||
}
|
||||
|
||||
// Wait until we are done
|
||||
wait = resource.StateChangeConf{
|
||||
|
@ -109,7 +106,7 @@ func resource_aws_r53_record_create(
|
|||
return rs, nil
|
||||
}
|
||||
|
||||
func resource_aws_r53_build_record_set(s *terraform.ResourceState) (*route53.ResourceRecordSet, error) {
|
||||
func resource_aws_r53_build_record_set(s *terraform.InstanceState) (*route53.ResourceRecordSet, error) {
|
||||
// Parse the TTL
|
||||
ttl, err := strconv.ParseInt(s.Attributes["ttl"], 10, 32)
|
||||
if err != nil {
|
||||
|
@ -133,7 +130,7 @@ func resource_aws_r53_build_record_set(s *terraform.ResourceState) (*route53.Res
|
|||
}
|
||||
|
||||
func resource_aws_r53_record_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
conn := p.route53
|
||||
|
@ -185,8 +182,8 @@ func resource_aws_r53_record_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_r53_record_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
conn := p.route53
|
||||
|
||||
|
@ -221,7 +218,7 @@ func resource_aws_r53_record_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_r53_record_update_state(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
rec *route53.ResourceRecordSet) {
|
||||
|
||||
flatRec := flatmap.Flatten(map[string]interface{}{
|
||||
|
@ -235,7 +232,7 @@ func resource_aws_r53_record_update_state(
|
|||
}
|
||||
|
||||
func resource_aws_r53_record_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
b := &diff.ResourceBuilder{
|
||||
|
|
|
@ -28,12 +28,12 @@ func TestAccRoute53Record(t *testing.T) {
|
|||
|
||||
func testAccCheckRoute53RecordDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.route53
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_route53_record" {
|
||||
continue
|
||||
}
|
||||
|
||||
parts := strings.Split(rs.ID, "_")
|
||||
parts := strings.Split(rs.Primary.ID, "_")
|
||||
zone := parts[0]
|
||||
name := parts[1]
|
||||
rType := parts[2]
|
||||
|
@ -57,16 +57,16 @@ func testAccCheckRoute53RecordDestroy(s *terraform.State) error {
|
|||
func testAccCheckRoute53RecordExists(n string) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
conn := testAccProvider.route53
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No hosted zone ID is set")
|
||||
}
|
||||
|
||||
parts := strings.Split(rs.ID, "_")
|
||||
parts := strings.Split(rs.Primary.ID, "_")
|
||||
zone := parts[0]
|
||||
name := parts[1]
|
||||
rType := parts[2]
|
||||
|
|
|
@ -21,9 +21,9 @@ func resource_aws_r53_zone_validation() *config.Validator {
|
|||
}
|
||||
|
||||
func resource_aws_r53_zone_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
r53 := p.route53
|
||||
|
||||
|
@ -74,7 +74,7 @@ func resource_aws_r53_wait(r53 *route53.Route53, ref string) (result interface{}
|
|||
}
|
||||
|
||||
func resource_aws_r53_zone_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
r53 := p.route53
|
||||
|
@ -89,8 +89,8 @@ func resource_aws_r53_zone_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_r53_zone_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
r53 := p.route53
|
||||
|
||||
|
@ -107,7 +107,7 @@ func resource_aws_r53_zone_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_r53_zone_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
|
||||
|
|
|
@ -26,12 +26,12 @@ func TestAccRoute53Zone(t *testing.T) {
|
|||
|
||||
func testAccCheckRoute53ZoneDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.route53
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_route53_zone" {
|
||||
continue
|
||||
}
|
||||
|
||||
_, err := conn.GetHostedZone(rs.ID)
|
||||
_, err := conn.GetHostedZone(rs.Primary.ID)
|
||||
if err == nil {
|
||||
return fmt.Errorf("Hosted zone still exists")
|
||||
}
|
||||
|
@ -41,17 +41,17 @@ func testAccCheckRoute53ZoneDestroy(s *terraform.State) error {
|
|||
|
||||
func testAccCheckRoute53ZoneExists(n string) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No hosted zone ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.route53
|
||||
_, err := conn.GetHostedZone(rs.ID)
|
||||
_, err := conn.GetHostedZone(rs.Primary.ID)
|
||||
if err != nil {
|
||||
return fmt.Errorf("Hosted zone err: %v", err)
|
||||
}
|
||||
|
|
|
@ -14,9 +14,9 @@ import (
|
|||
)
|
||||
|
||||
func resource_aws_route_table_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -56,9 +56,9 @@ func resource_aws_route_table_create(
|
|||
}
|
||||
|
||||
func resource_aws_route_table_update(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -133,7 +133,7 @@ func resource_aws_route_table_update(
|
|||
}
|
||||
|
||||
func resource_aws_route_table_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
@ -188,8 +188,8 @@ func resource_aws_route_table_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_route_table_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -206,7 +206,7 @@ func resource_aws_route_table_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_route_table_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
b := &diff.ResourceBuilder{
|
||||
|
@ -220,15 +220,10 @@ func resource_aws_route_table_diff(
|
|||
}
|
||||
|
||||
func resource_aws_route_table_update_state(
|
||||
s *terraform.ResourceState,
|
||||
rt *ec2.RouteTable) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
rt *ec2.RouteTable) (*terraform.InstanceState, error) {
|
||||
s.Attributes["vpc_id"] = rt.VpcId
|
||||
|
||||
// We belong to a VPC
|
||||
s.Dependencies = []terraform.ResourceDependency{
|
||||
terraform.ResourceDependency{ID: rt.VpcId},
|
||||
}
|
||||
|
||||
return s, nil
|
||||
}
|
||||
|
||||
|
|
|
@ -10,9 +10,9 @@ import (
|
|||
)
|
||||
|
||||
func resource_aws_route_table_association_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
rs := s.MergeDiff(d)
|
||||
|
@ -32,17 +32,13 @@ func resource_aws_route_table_association_create(
|
|||
rs.ID = resp.AssociationId
|
||||
log.Printf("[INFO] Association ID: %s", rs.ID)
|
||||
|
||||
rs.Dependencies = []terraform.ResourceDependency{
|
||||
terraform.ResourceDependency{ID: rs.Attributes["route_table_id"]},
|
||||
}
|
||||
|
||||
return rs, nil
|
||||
}
|
||||
|
||||
func resource_aws_route_table_association_update(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -68,15 +64,11 @@ func resource_aws_route_table_association_update(
|
|||
rs.ID = resp.AssociationId
|
||||
log.Printf("[INFO] Association ID: %s", rs.ID)
|
||||
|
||||
rs.Dependencies = []terraform.ResourceDependency{
|
||||
terraform.ResourceDependency{ID: rs.Attributes["route_table_id"]},
|
||||
}
|
||||
|
||||
return rs, nil
|
||||
}
|
||||
|
||||
func resource_aws_route_table_association_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
@ -95,8 +87,8 @@ func resource_aws_route_table_association_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_route_table_association_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -128,7 +120,7 @@ func resource_aws_route_table_association_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_route_table_association_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
b := &diff.ResourceBuilder{
|
||||
|
|
|
@ -39,14 +39,14 @@ func TestAccAWSRouteTableAssociation(t *testing.T) {
|
|||
func testAccCheckRouteTableAssociationDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.ec2conn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_route_table_association" {
|
||||
continue
|
||||
}
|
||||
|
||||
// Try to find the resource
|
||||
resp, err := conn.DescribeRouteTables(
|
||||
[]string{rs.Attributes["route_table_Id"]}, ec2.NewFilter())
|
||||
[]string{rs.Primary.Attributes["route_table_Id"]}, ec2.NewFilter())
|
||||
if err != nil {
|
||||
// Verify the error is what we want
|
||||
ec2err, ok := err.(*ec2.Error)
|
||||
|
@ -72,18 +72,18 @@ func testAccCheckRouteTableAssociationDestroy(s *terraform.State) error {
|
|||
|
||||
func testAccCheckRouteTableAssociationExists(n string, v *ec2.RouteTable) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.ec2conn
|
||||
resp, err := conn.DescribeRouteTables(
|
||||
[]string{rs.Attributes["route_table_id"]}, ec2.NewFilter())
|
||||
[]string{rs.Primary.Attributes["route_table_id"]}, ec2.NewFilter())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
@ -124,14 +124,14 @@ func TestAccAWSRouteTable_instance(t *testing.T) {
|
|||
func testAccCheckRouteTableDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.ec2conn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_route_table" {
|
||||
continue
|
||||
}
|
||||
|
||||
// Try to find the resource
|
||||
resp, err := conn.DescribeRouteTables(
|
||||
[]string{rs.ID}, ec2.NewFilter())
|
||||
[]string{rs.Primary.ID}, ec2.NewFilter())
|
||||
if err == nil {
|
||||
if len(resp.RouteTables) > 0 {
|
||||
return fmt.Errorf("still exist.")
|
||||
|
@ -155,18 +155,18 @@ func testAccCheckRouteTableDestroy(s *terraform.State) error {
|
|||
|
||||
func testAccCheckRouteTableExists(n string, v *ec2.RouteTable) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.ec2conn
|
||||
resp, err := conn.DescribeRouteTables(
|
||||
[]string{rs.ID}, ec2.NewFilter())
|
||||
[]string{rs.Primary.ID}, ec2.NewFilter())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
@ -22,9 +22,9 @@ func resource_aws_s3_bucket_validation() *config.Validator {
|
|||
}
|
||||
|
||||
func resource_aws_s3_bucket_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
s3conn := p.s3conn
|
||||
|
||||
|
@ -52,7 +52,7 @@ func resource_aws_s3_bucket_create(
|
|||
}
|
||||
|
||||
func resource_aws_s3_bucket_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
s3conn := p.s3conn
|
||||
|
@ -65,8 +65,8 @@ func resource_aws_s3_bucket_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_s3_bucket_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
s3conn := p.s3conn
|
||||
|
||||
|
@ -80,7 +80,7 @@ func resource_aws_s3_bucket_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_s3_bucket_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
|
||||
|
|
|
@ -27,12 +27,12 @@ func TestAccAWSS3Bucket(t *testing.T) {
|
|||
func testAccCheckAWSS3BucketDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.s3conn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_s3_bucket" {
|
||||
continue
|
||||
}
|
||||
|
||||
bucket := conn.Bucket(rs.ID)
|
||||
bucket := conn.Bucket(rs.Primary.ID)
|
||||
resp, err := bucket.Head("/")
|
||||
if err == nil {
|
||||
return fmt.Errorf("S3Bucket still exists")
|
||||
|
@ -44,17 +44,17 @@ func testAccCheckAWSS3BucketDestroy(s *terraform.State) error {
|
|||
|
||||
func testAccCheckAWSS3BucketExists(n string) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No S3 Bucket ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.s3conn
|
||||
bucket := conn.Bucket(rs.ID)
|
||||
bucket := conn.Bucket(rs.Primary.ID)
|
||||
resp, err := bucket.Head("/")
|
||||
if err != nil {
|
||||
return fmt.Errorf("S3Bucket error: %v", err)
|
||||
|
|
|
@ -10,7 +10,6 @@ import (
|
|||
"github.com/hashicorp/terraform/helper/hashcode"
|
||||
"github.com/hashicorp/terraform/helper/resource"
|
||||
"github.com/hashicorp/terraform/helper/schema"
|
||||
"github.com/hashicorp/terraform/terraform"
|
||||
"github.com/mitchellh/goamz/ec2"
|
||||
)
|
||||
|
||||
|
@ -271,8 +270,6 @@ func resourceAwsSecurityGroupRead(d *schema.ResourceData, meta interface{}) erro
|
|||
|
||||
sg := sgRaw.(*ec2.SecurityGroupInfo)
|
||||
|
||||
var deps []terraform.ResourceDependency
|
||||
|
||||
// Gather our ingress rules
|
||||
ingressRules := make([]map[string]interface{}, len(sg.IPPerms))
|
||||
for i, perm := range sg.IPPerms {
|
||||
|
@ -286,31 +283,17 @@ func resourceAwsSecurityGroupRead(d *schema.ResourceData, meta interface{}) erro
|
|||
}
|
||||
|
||||
if len(perm.SourceGroups) > 0 {
|
||||
// We depend on other security groups
|
||||
for _, v := range perm.SourceGroups {
|
||||
deps = append(deps,
|
||||
terraform.ResourceDependency{ID: v.Id},
|
||||
)
|
||||
}
|
||||
|
||||
n["security_groups"] = flattenSecurityGroups(perm.SourceGroups)
|
||||
}
|
||||
|
||||
ingressRules[i] = n
|
||||
}
|
||||
|
||||
if v := d.Get("vpc_id"); v != nil && v.(string) != "" {
|
||||
deps = append(deps,
|
||||
terraform.ResourceDependency{ID: v.(string)},
|
||||
)
|
||||
}
|
||||
|
||||
d.Set("description", sg.Description)
|
||||
d.Set("name", sg.Name)
|
||||
d.Set("vpc_id", sg.VpcId)
|
||||
d.Set("owner_id", sg.OwnerId)
|
||||
d.Set("ingress", ingressRules)
|
||||
d.SetDependencies(deps)
|
||||
|
||||
return nil
|
||||
}
|
||||
|
|
|
@ -131,22 +131,22 @@ func TestAccAWSSecurityGroup_Change(t *testing.T) {
|
|||
func testAccCheckAWSSecurityGroupDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.ec2conn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_security_group" {
|
||||
continue
|
||||
}
|
||||
|
||||
sgs := []ec2.SecurityGroup{
|
||||
ec2.SecurityGroup{
|
||||
Id: rs.ID,
|
||||
Id: rs.Primary.ID,
|
||||
},
|
||||
}
|
||||
|
||||
// Retrieve our group
|
||||
resp, err := conn.SecurityGroups(sgs, nil)
|
||||
if err == nil {
|
||||
if len(resp.Groups) > 0 && resp.Groups[0].Id == rs.ID {
|
||||
return fmt.Errorf("Security Group (%s) still exists.", rs.ID)
|
||||
if len(resp.Groups) > 0 && resp.Groups[0].Id == rs.Primary.ID {
|
||||
return fmt.Errorf("Security Group (%s) still exists.", rs.Primary.ID)
|
||||
}
|
||||
|
||||
return nil
|
||||
|
@ -167,19 +167,19 @@ func testAccCheckAWSSecurityGroupDestroy(s *terraform.State) error {
|
|||
|
||||
func testAccCheckAWSSecurityGroupExists(n string, group *ec2.SecurityGroupInfo) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No Security Group is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.ec2conn
|
||||
sgs := []ec2.SecurityGroup{
|
||||
ec2.SecurityGroup{
|
||||
Id: rs.ID,
|
||||
Id: rs.Primary.ID,
|
||||
},
|
||||
}
|
||||
resp, err := conn.SecurityGroups(sgs, nil)
|
||||
|
@ -187,7 +187,7 @@ func testAccCheckAWSSecurityGroupExists(n string, group *ec2.SecurityGroupInfo)
|
|||
return err
|
||||
}
|
||||
|
||||
if len(resp.Groups) > 0 && resp.Groups[0].Id == rs.ID {
|
||||
if len(resp.Groups) > 0 && resp.Groups[0].Id == rs.Primary.ID {
|
||||
|
||||
*group = resp.Groups[0]
|
||||
|
||||
|
|
|
@ -12,9 +12,9 @@ import (
|
|||
)
|
||||
|
||||
func resource_aws_subnet_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -60,16 +60,16 @@ func resource_aws_subnet_create(
|
|||
}
|
||||
|
||||
func resource_aws_subnet_update(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
// This should never be called because we have no update-able
|
||||
// attributes
|
||||
panic("Update for subnet is not supported")
|
||||
}
|
||||
|
||||
func resource_aws_subnet_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
@ -102,8 +102,8 @@ func resource_aws_subnet_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_subnet_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -120,7 +120,7 @@ func resource_aws_subnet_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_subnet_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
b := &diff.ResourceBuilder{
|
||||
|
@ -139,17 +139,12 @@ func resource_aws_subnet_diff(
|
|||
}
|
||||
|
||||
func resource_aws_subnet_update_state(
|
||||
s *terraform.ResourceState,
|
||||
subnet *ec2.Subnet) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
subnet *ec2.Subnet) (*terraform.InstanceState, error) {
|
||||
s.Attributes["availability_zone"] = subnet.AvailabilityZone
|
||||
s.Attributes["cidr_block"] = subnet.CidrBlock
|
||||
s.Attributes["vpc_id"] = subnet.VpcId
|
||||
|
||||
// We belong to a VPC
|
||||
s.Dependencies = []terraform.ResourceDependency{
|
||||
terraform.ResourceDependency{ID: subnet.VpcId},
|
||||
}
|
||||
|
||||
return s, nil
|
||||
}
|
||||
|
||||
|
|
|
@ -40,14 +40,14 @@ func TestAccAWSSubnet(t *testing.T) {
|
|||
func testAccCheckSubnetDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.ec2conn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_subnet" {
|
||||
continue
|
||||
}
|
||||
|
||||
// Try to find the resource
|
||||
resp, err := conn.DescribeSubnets(
|
||||
[]string{rs.ID}, ec2.NewFilter())
|
||||
[]string{rs.Primary.ID}, ec2.NewFilter())
|
||||
if err == nil {
|
||||
if len(resp.Subnets) > 0 {
|
||||
return fmt.Errorf("still exist.")
|
||||
|
@ -71,18 +71,18 @@ func testAccCheckSubnetDestroy(s *terraform.State) error {
|
|||
|
||||
func testAccCheckSubnetExists(n string, v *ec2.Subnet) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.ec2conn
|
||||
resp, err := conn.DescribeSubnets(
|
||||
[]string{rs.ID}, ec2.NewFilter())
|
||||
[]string{rs.Primary.ID}, ec2.NewFilter())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
@ -13,9 +13,9 @@ import (
|
|||
)
|
||||
|
||||
func resource_aws_vpc_create(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -89,9 +89,9 @@ func resource_aws_vpc_create(
|
|||
}
|
||||
|
||||
func resource_aws_vpc_update(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
rs := s.MergeDiff(d)
|
||||
|
@ -132,7 +132,7 @@ func resource_aws_vpc_update(
|
|||
}
|
||||
|
||||
func resource_aws_vpc_destroy(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) error {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
@ -151,8 +151,8 @@ func resource_aws_vpc_destroy(
|
|||
}
|
||||
|
||||
func resource_aws_vpc_refresh(
|
||||
s *terraform.ResourceState,
|
||||
meta interface{}) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
meta interface{}) (*terraform.InstanceState, error) {
|
||||
p := meta.(*ResourceProvider)
|
||||
ec2conn := p.ec2conn
|
||||
|
||||
|
@ -180,7 +180,7 @@ func resource_aws_vpc_refresh(
|
|||
}
|
||||
|
||||
func resource_aws_vpc_diff(
|
||||
s *terraform.ResourceState,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig,
|
||||
meta interface{}) (*terraform.ResourceDiff, error) {
|
||||
b := &diff.ResourceBuilder{
|
||||
|
@ -200,8 +200,8 @@ func resource_aws_vpc_diff(
|
|||
}
|
||||
|
||||
func resource_aws_vpc_update_state(
|
||||
s *terraform.ResourceState,
|
||||
vpc *ec2.VPC) (*terraform.ResourceState, error) {
|
||||
s *terraform.InstanceState,
|
||||
vpc *ec2.VPC) (*terraform.InstanceState, error) {
|
||||
s.Attributes["cidr_block"] = vpc.CidrBlock
|
||||
return s, nil
|
||||
}
|
||||
|
|
|
@ -62,13 +62,13 @@ func TestAccVpcUpdate(t *testing.T) {
|
|||
func testAccCheckVpcDestroy(s *terraform.State) error {
|
||||
conn := testAccProvider.ec2conn
|
||||
|
||||
for _, rs := range s.Resources {
|
||||
for _, rs := range s.RootModule().Resources {
|
||||
if rs.Type != "aws_vpc" {
|
||||
continue
|
||||
}
|
||||
|
||||
// Try to find the VPC
|
||||
resp, err := conn.DescribeVpcs([]string{rs.ID}, ec2.NewFilter())
|
||||
resp, err := conn.DescribeVpcs([]string{rs.Primary.ID}, ec2.NewFilter())
|
||||
if err == nil {
|
||||
if len(resp.VPCs) > 0 {
|
||||
return fmt.Errorf("VPCs still exist.")
|
||||
|
@ -102,17 +102,17 @@ func testAccCheckVpcCidr(vpc *ec2.VPC, expected string) resource.TestCheckFunc {
|
|||
|
||||
func testAccCheckVpcExists(n string, vpc *ec2.VPC) resource.TestCheckFunc {
|
||||
return func(s *terraform.State) error {
|
||||
rs, ok := s.Resources[n]
|
||||
rs, ok := s.RootModule().Resources[n]
|
||||
if !ok {
|
||||
return fmt.Errorf("Not found: %s", n)
|
||||
}
|
||||
|
||||
if rs.ID == "" {
|
||||
if rs.Primary.ID == "" {
|
||||
return fmt.Errorf("No VPC ID is set")
|
||||
}
|
||||
|
||||
conn := testAccProvider.ec2conn
|
||||
resp, err := conn.DescribeVpcs([]string{rs.ID}, ec2.NewFilter())
|
||||
resp, err := conn.DescribeVpcs([]string{rs.Primary.ID}, ec2.NewFilter())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
@ -91,32 +91,35 @@ func (p *ResourceProvider) Configure(c *terraform.ResourceConfig) error {
|
|||
}
|
||||
|
||||
func (p *ResourceProvider) Apply(
|
||||
s *terraform.ResourceState,
|
||||
d *terraform.ResourceDiff) (*terraform.ResourceState, error) {
|
||||
if _, ok := p.p.ResourcesMap[s.Type]; ok {
|
||||
return p.p.Apply(s, d)
|
||||
info *terraform.InstanceInfo,
|
||||
s *terraform.InstanceState,
|
||||
d *terraform.ResourceDiff) (*terraform.InstanceState, error) {
|
||||
if _, ok := p.p.ResourcesMap[info.Type]; ok {
|
||||
return p.p.Apply(info, s, d)
|
||||
}
|
||||
|
||||
return resourceMap.Apply(s, d, p)
|
||||
return resourceMap.Apply(info, s, d, p)
|
||||
}
|
||||
|
||||
func (p *ResourceProvider) Diff(
|
||||
s *terraform.ResourceState,
|
||||
info *terraform.InstanceInfo,
|
||||
s *terraform.InstanceState,
|
||||
c *terraform.ResourceConfig) (*terraform.ResourceDiff, error) {
|
||||
if _, ok := p.p.ResourcesMap[s.Type]; ok {
|
||||
return p.p.Diff(s, c)
|
||||
if _, ok := p.p.ResourcesMap[info.Type]; ok {
|
||||
return p.p.Diff(info, s, c)
|
||||
}
|
||||
|
||||
return resourceMap.Diff(s, c, p)
|
||||
return resourceMap.Diff(info, s, c, p)
|
||||
}
|
||||
|
||||
func (p *ResourceProvider) Refresh(
|
||||
s *terraform.ResourceState) (*terraform.ResourceState, error) {
|
||||
if _, ok := p.p.ResourcesMap[s.Type]; ok {
|
||||
return p.p.Refresh(s)
|
||||
info *terraform.InstanceInfo,
|
||||
s *terraform.InstanceState) (*terraform.InstanceState, error) {
|
||||
if _, ok := p.p.ResourcesMap[info.Type]; ok {
|
||||
return p.p.Refresh(info, s)
|
||||
}
|
||||
|
||||
return resourceMap.Refresh(s, p)
|
||||
return resourceMap.Refresh(info, s, p)
|
||||
}
|
||||
|
||||
func (p *ResourceProvider) Resources() []terraform.ResourceType {
|
||||
|
|
Loading…
Reference in New Issue